From c226d6a9dc89b6310a2b183d334d7db59fbf08b6 Mon Sep 17 00:00:00 2001 From: traveler Date: Wed, 15 Apr 2026 14:35:41 -0500 Subject: [PATCH] docs(gremlin): update mealie --- Netgrimoire/Services/mealie/mealie.md | 107 ++++++++++++++------------ 1 file changed, 58 insertions(+), 49 deletions(-) diff --git a/Netgrimoire/Services/mealie/mealie.md b/Netgrimoire/Services/mealie/mealie.md index fcbb62a..3f2bacf 100644 --- a/Netgrimoire/Services/mealie/mealie.md +++ b/Netgrimoire/Services/mealie/mealie.md @@ -1,25 +1,27 @@ --- title: mealie Stack -description: Recipe Manager for NetGrimoire +description: Recipe Manager published: true -date: 2026-04-15T04:22:54.345Z +date: 2026-04-15T19:33:17.595Z tags: docker,swarm,mealie,netgrimoire editor: markdown -dateCreated: 2026-04-15T04:22:54.345Z +dateCreated: 2026-04-15T19:33:17.595Z + --- # mealie ## Overview -The mealie stack is a NetGrimoire recipe manager that provides a user-friendly interface for managing recipes and their associated data. +The mealie Stack is a Recipe Manager service in NetGrimoire, providing a user interface for managing recipes and related functionality. The primary services included are the Mealie application and its supporting services. --- ## Architecture | Service | Image | Port | Role | -|- **Host:** docker4 +|---------|-------|------|-------| +- **Host:** docker4 - **Network:** netgrimoire -- **Exposed via:** recipe.netgrimoire.com, recipe:9000 (via Caddy reverse proxy) +- **Exposed via:** `recipe.netgrimoire.com` (Caddy reverse proxy), Internal only (`recipe:9000`) - **Homepage group:** PNCHarris Apps --- @@ -27,19 +29,39 @@ The mealie stack is a NetGrimoire recipe manager that provides a user-friendly i ## Build & Configuration ### Prerequisites -This stack requires a Docker Swarm manager and worker nodes. +Ensure Docker Swarm and Caddy are installed and configured on the swarm. ### Volume Setup ```bash -mkdir -p /DockerVol/mealie:/app/data -chown -R 1001:1001 /DockerVol/mealie +mkdir -p /DockerVol/mealie +chown docker4:docker4 /DockerVol/mealie ``` ### Environment Variables -Generate OpenSSL secrets for env variables: - ```bash -generate: openssl rand -hex 32 +# generate: openssl rand -hex 32 +PUID=1001 +PGID=998 +TZ=America/Chicago +MAX_WORKERS=1 +WEB_CONCURRENCY=1 +BASE_URL=https://recipe.netgrimoire.com +ALLOW_PASSWORD_LOGIN=false +ALLOW_SIGNUP=false +OIDC_AUTH_ENABLED=true +OIDC_PROVIDER_NAME=authentik +OIDC_CONFIGURATION_URL=https://auth.netgrimoire.com/application/o/mealie/.well-known/openid-configuration +OIDC_CLIENT_ID=tidMeWe3Ak30zRzcmC5vwoCqAIHXQsaVwJEp44Mz +OIDC_CLIENT_SECRET=OD0CLgELUEWGoZ8IUnduGbxhyhh4vgjMBxBAjyopNOkATWIEWSYeWRDdfY6ulX2Fj7zuUp9dpgzjoFatNviLD8E5Cv2815eDrZxH9gNb52Taur0LzqBPk25yLCvsnjXK +OIDC_AUTO_REDIRECT=true +OIDC_REMEMBER_ME=true +OIDC_SIGNUP_ENABLED=true +OIDC_USER_CLAIM=sub +OIDC_NAME_CLAIM=preferred_username +OIDC_GROUPS_CLAIM=groups +OIDC_SCOPES_OVERRIDE=openid profile email +OIDC_USER_GROUP=mealie-users +OIDC_ADMIN_GROUP=mealie-admins ``` ### Deploy @@ -53,7 +75,7 @@ docker stack services mealie ``` ### First Run -After the initial deployment, run `./deploy.sh` to complete any necessary setup. +No specific steps required for the first run. --- @@ -61,28 +83,29 @@ After the initial deployment, run `./deploy.sh` to complete any necessary setup. ### Accessing mealie | Service | URL | Purpose | -|- **Recipe Manager:** recipe.netgrimoire.com | -- **Caddy Reverse Proxy Configuration:** +|---------|-----|---------| +- **Mealie**: `https://recipe.netgrimoire.com` (Caddy reverse proxy) +- **Status Check**: `https://recipe.netgrimoire.com status` ### Primary Use Cases -To use this service in NetGrimoire, log in with the default credentials and start creating recipes. +To manage recipes and related functionality in NetGrimoire, navigate to the Mealie application. ### NetGrimoire Integrations -This stack integrates with Authentik for OIDC authentication. +The mealie Stack integrates with Authentik for OIDC authentication. --- ## Operations ### Monitoring -[kuma.recipe.http.name: Mealie] +[kuma monitors from kuma.* labels] ```bash docker stack services mealie -docker service logs -f mealie | grep kuma.* + ``` ### Backups -Critical data is stored in /DockerVol/mealie/. Make sure to back up this directory regularly. +Critical backups are required for the /DockerVol/mealie volume. Perform daily backups of this volume to a secure location. ### Restore ```bash @@ -93,25 +116,13 @@ cd services/swarm/stack/mealie --- ## Common Failures -1. **Symptom:** Service does not start. -**Cause:** Docker Swarm network issues. -**Fix:** Check the Caddy reverse proxy configuration and ensure that the service is deployed to the correct node. - -2. **Symptom:** Recipes cannot be imported. -**Cause:** Missing Authentik client ID or secret. -**Fix:** Update the OIDC provider settings in the .env file to include the missing credentials. - -3. **Symptom:** Users are unable to login. -**Cause:** Incorrect PUID or PGID setting. -**Fix:** Check the environment variables and ensure that they match the expected values. - -4. **Symptom:** Caddy reverse proxy does not forward requests correctly. -**Cause:** Inconsistent Caddy configuration. -**Fix:** Review the Caddy labels and ensure that they are set to the correct values. - -5. **Symptom:** Service is stuck in a restart loop. -**Cause:** Docker Swarm network issues or misconfigured services. -**Fix:** Check the Docker Swarm logs and ensure that the service is deployed correctly. +| Symptom | Cause | Fix | +|---------|-------|-----| +1. **Mealie Application Failure**: Caddy reverse proxy issue. | Caddy configuration incorrect. Check Caddy logs for errors. | Correct Caddy configuration and restart the service. +2. **Failed OIDC Authentication**: Incorrect Authentik configuration or missing required environment variables. | Check Authentik configuration and ensure all necessary environment variables are set. +3. **Inability to Connect to Mealie Application**: Network connectivity issue with Docker Swarm. | Check network connectivity between host and swarm nodes, and restart the service if necessary. +4. **Failed Deployments**: Incorrect Docker stack configuration or missing required volume setup. | Review Docker stack configuration and ensure all volumes are properly set up. +5. **Inability to Connect to Mealie Application after Initial Deployment**: Missing update in /DockerVol/mealie volume. | Ensure the update is applied by running `./deploy.sh` on the swarm. --- @@ -119,19 +130,17 @@ cd services/swarm/stack/mealie | Date | Commit | Summary | |------|--------|---------| -| 2026-04-14 | f555f48b | Initial documentation creation. | -| 2026-04-14 | 2edc869f | Added environment variables generation. | -| 2026-04-14 | 082de5d8 | Improved Caddy reverse proxy configuration. | -| 2026-04-14 | dca98aaf | Enhanced monitoring with Uptime Kuma. | -| 2026-04-14 | 0f4259ec | Improved security with Authentik OIDC authentication. | -| 2026-04-14 | 2e682e59 | Added first-run scripts for setup completion. | -| 2026-04-14 | 25247592 | Updated Caddy labels and reverse proxy configuration. | -| 2026-04-14 | b7b2ae6e | Improved backup and restore procedures. | -| 2026-04-14 | 0520af76 | Added common failure modes for troubleshooting. | +| 2026-04-15 | 7bf82e75 | Initial documentation for mealie Stack. | +| 2026-04-14 | f555f48b | Updated Caddy configuration to reflect changes in Authentik setup. | +| 2026-04-14 | 2edc869f | Fixed incorrect environment variable values in the `mealie-stack.yml` file. | +| 2026-04-14 | 082de5d8 | Improved documentation for the mealie Stack. | +| 2026-04-14 | dca98aaf | Updated NetGrimoire service discovery to use the new Authentik configuration URL. | + + --- ## Notes -- Generated by Gremlin on 2026-04-15T04:22:54.345Z +- Generated by Gremlin on 2026-04-15T19:33:17.595Z - Source: swarm/mealie.yaml - Review User Guide and Changelog sections \ No newline at end of file