docs(gremlin): update mealie

This commit is contained in:
traveler 2026-04-15 14:35:41 -05:00
parent de2f48c590
commit c226d6a9dc

View file

@ -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.*
<docker service logs commands>
```
### 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. |
<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.>
---
## 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