docs(gremlin): update mealie

This commit is contained in:
traveler 2026-04-20 16:11:08 -05:00
parent 9e2fd94165
commit e8a8822be6

View file

@ -2,65 +2,26 @@
title: mealie Stack title: mealie Stack
description: Recipe Manager for NetGrimoire description: Recipe Manager for NetGrimoire
published: true published: true
date: 2026-04-20T21:03:42.489Z date: 2026-04-20T21:09:09.868Z
tags: docker,swarm,mealie,netgrimoire tags: docker,swarm,mealie,netgrimoire
editor: markdown editor: markdown
dateCreated: 2026-04-20T21:03:42.489Z dateCreated: 2026-04-20T21:09:09.868Z
--- ---
# mealie # mealie
## Overview ## 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 ## Architecture
| Service | Image | Port | Role | | Service | Image | Port | Role |
|---------|-----|-----|-----| |-|-|-|-|
- **Host:** docker4 - **Host:** docker4
- **Network:** netgrimoire - **Network:** netgrimoire
- **Exposed via:** recipe.netgrimoire.com - **Exposed via:** recipe.netgrimoire.com, Internal only
- **Homepage group:** PNCHarris Apps - **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 ## Build & Configuration
@ -75,9 +36,29 @@ chown -R mealie:mealie /DockerVol/mealie
``` ```
### Environment Variables ### 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_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 ### Deploy
@ -91,7 +72,7 @@ docker stack services mealie
``` ```
### First Run ### 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 ### Accessing mealie
| Service | URL | Purpose | | 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 ### 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 ### 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 ## Operations
### Monitoring ### Monitoring
[kuma monitors from kuma.* labels] Kuma monitors the mealie stack.
```bash ```bash
docker stack services mealie docker stack services mealie
docker service logs -f recipe docker service logs -f mealie
``` ```
### Backups ### 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 ### Restore
To restore a backup, simply execute the deploy script: To restore the mealie stack, run the following command:
```bash ```bash
cd services/swarm/stack/mealie cd services/swarm/stack/mealie
./deploy.sh ./deploy.sh
@ -132,22 +118,26 @@ cd services/swarm/stack/mealie
--- ---
## Common Failures ## Common Failures
| Symptom | Cause | Fix | | Failure Mode | Symptoms | 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. | 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 ## Changelog
| Date | Commit | Summary | | Date | Commit | Summary |
|------|--------|---------| |-|-|-|
| 2026-04-20 | 7cf2df8b | Initial documentation for mealie Stack | - 2026-04-20 | <infer what changed from the diffs above> | Initial documentation |
| 2026-04-20 | 02a2898b | Updated environment variables and deployed stack configuration | | 2026-04-19 | <infer what changed from the diffs above> | Service configuration and deployment updated |
| 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 |
Generated by Gremlin on 2026-04-20T21:03:42.489Z <Write a paragraph summarizing the evolution of this service based on the diffs above. If no diffs available, note that this is the initial documentation.>
Source: swarm/mealie.yaml
Review User Guide and Changelog sections ---
## Notes
- Generated by Gremlin on 2026-04-20T21:09:09.868Z
- Source: swarm/mealie.yaml