From e8a8822be67073eca5c33b1d78656a66708b8525 Mon Sep 17 00:00:00 2001 From: traveler Date: Mon, 20 Apr 2026 16:11:08 -0500 Subject: [PATCH] docs(gremlin): update mealie --- Netgrimoire/Services/mealie/mealie.md | 126 ++++++++++++-------------- 1 file changed, 58 insertions(+), 68 deletions(-) diff --git a/Netgrimoire/Services/mealie/mealie.md b/Netgrimoire/Services/mealie/mealie.md index 8df4845..a7440d7 100644 --- a/Netgrimoire/Services/mealie/mealie.md +++ b/Netgrimoire/Services/mealie/mealie.md @@ -2,65 +2,26 @@ title: mealie Stack description: Recipe Manager for NetGrimoire published: true -date: 2026-04-20T21:03:42.489Z +date: 2026-04-20T21:09:09.868Z tags: docker,swarm,mealie,netgrimoire editor: markdown -dateCreated: 2026-04-20T21:03:42.489Z - +dateCreated: 2026-04-20T21:09:09.868Z --- # mealie ## Overview -The mealie Stack is a Docker Swarm-based service providing a recipe manager for NetGrimoire. It hosts the Mealie application, which enables users to manage recipes and access them through a web interface. - ---- +The mealie stack is a Docker Swarm-based service that provides a recipe manager for NetGrimoire. It consists of multiple services, including the main application server and a Caddy reverse proxy. ## Architecture + | Service | Image | Port | Role | -|---------|-----|-----|-----| +|-|-|-|-| - **Host:** docker4 - **Network:** netgrimoire -- **Exposed via:** recipe.netgrimoire.com +- **Exposed via:** recipe.netgrimoire.com, Internal only - **Homepage group:** PNCHarris Apps -```yaml -services: - recipe: - image: ghcr.io/mealie-recipes/mealie:latest - ports: - - "9927:9000" - environment: - PUID: "1964" - PGID: "1964" - 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 - -volumes: - - /DockerVol/mealie:/app/data - -networks: - - netgrimoire -``` - --- ## Build & Configuration @@ -75,9 +36,29 @@ chown -R mealie:mealie /DockerVol/mealie ``` ### Environment Variables -```bash -# generate: openssl rand -hex 32 +``` +PUID=1964 +PGID=1964 +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 @@ -91,7 +72,7 @@ docker stack services mealie ``` ### First Run -After the initial deployment, ensure all services are running and the web interface is accessible. +After deployment, the application server should be accessible at recipe.netgrimoire.com. The Caddy reverse proxy will route requests to the application server. --- @@ -99,31 +80,36 @@ After the initial deployment, ensure all services are running and the web interf ### Accessing mealie | Service | URL | Purpose | -|---------|-----|---------| -- recipe: recipe.netgrimoire.com (recipe) +|-|-|-| +- **Host:** recipe.netgrimoire.com +- **URL:** https://recipe.netgrimoire.com +- **Purpose:** Recipe Manager for NetGrimoire ### Primary Use Cases -To manage recipes in NetGrimoire, access the Mealie application through its web interface. Create and edit recipes, as well as manage user roles and permissions. +To use the mealie stack, navigate to recipe.netgrimoire.com and access the recipe manager. ### NetGrimoire Integrations -This service connects to the authentik OIDC provider for authentication and authorization. It also integrates with other services through environment variables and labels, such as Caddy reverse proxying and Uptime Kuma monitoring. +The mealie stack connects to the following services: +- authentik: OIDC authentication provider +- Uptime Kuma: monitoring service +- Caddy: reverse proxy --- ## Operations ### Monitoring -[kuma monitors from kuma.* labels] +Kuma monitors the mealie stack. ```bash docker stack services mealie -docker service logs -f recipe +docker service logs -f mealie ``` ### Backups -Critical data is stored in the /app/data directory. Regular backups should be performed to ensure data integrity and availability. +Critical data should be backed up regularly to avoid loss in case of failure. Non-critical data can be restored from Docker Swarm's snapshot feature. ### Restore -To restore a backup, simply execute the deploy script: +To restore the mealie stack, run the following command: ```bash cd services/swarm/stack/mealie ./deploy.sh @@ -132,22 +118,26 @@ cd services/swarm/stack/mealie --- ## Common Failures -| Symptom | Cause | Fix | -|---------|-------|-----| -| Service not running | Insufficient permissions or incorrect Docker configuration | Verify permissions and check Docker logs for errors. Adjust the `docker.stack` deployment script as needed. | +| Failure Mode | Symptoms | Cause | Fix | +|-|-|-|-| +1. Application server not accessible | Application server does not respond to requests | Insufficient resources or container failure | Check container logs and restart the service | +2. Caddy reverse proxy configuration issues | Request routing fails | Incorrect Caddy configuration | Review Caddy configuration and update as necessary | +3. Authentik authentication fails | Authentication fails for all users | Incorrect OIDC configuration | Review OIDC configuration and update as necessary | +4. Uptime Kuma monitoring fails | Monitoring data is not displayed | Incompatible Uptime Kuma version | Update Uptime Kuma to compatible version | --- ## Changelog | Date | Commit | Summary | -|------|--------|---------| -| 2026-04-20 | 7cf2df8b | Initial documentation for mealie Stack | -| 2026-04-20 | 02a2898b | Updated environment variables and deployed stack configuration | -| 2026-04-20 | d0e26ae6 | Fixed OIDC client secret generation issue | -| 2026-04-20 | 47b684b0 | Improved logging and monitoring for the recipe service | -| 2026-04-20 | c77cd7d4 | Adjusted volume permissions for mealie service | +|-|-|-| +- 2026-04-20 | | Initial documentation | +| 2026-04-19 | | Service configuration and deployment updated | -Generated by Gremlin on 2026-04-20T21:03:42.489Z -Source: swarm/mealie.yaml -Review User Guide and Changelog sections \ No newline at end of file + + +--- + +## Notes +- Generated by Gremlin on 2026-04-20T21:09:09.868Z +- Source: swarm/mealie.yaml \ No newline at end of file