# mealie Stack
description: Recipe Manager

---
## Architecture
| Service | Image | Port | Role |
|- **Host:** docker4|
|- **Network:** netgrimoire|
|- **Exposed via:** recipe.netgrimoire.com, 192.168.1.100:9000|
|- **Homepage group:** PNCHarris Apps|

---
## Build & Configuration

### Prerequisites
None

### Volume Setup
```bash
mkdir -p /DockerVol/mealie:/app/data
chown -R mealie:mealie /DockerVol/mealie
```

### Environment Variables
```bash
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
```bash
cd services/swarm/stack/mealie
set -a && source .env && set +a
docker stack config --compose-file mealie-stack.yml > resolved.yml
docker stack deploy --compose-file resolved.yml mealie
rm resolved.yml
docker stack services mealie
```

### First Run
After deployment, verify that the service is accessible at `recipe.netgrimoire.com` and that the environment variables are set correctly. Also, check the logs for any errors.

---
## User Guide

### Accessing mealie
| Service | URL | Purpose |
|- **mealie** | https://recipe.netgrimoire.com | Recipe Manager |

### Primary Use Cases
Use `mealie` to manage recipes and access a web-based interface to create, edit, and delete recipes. You can also use the API endpoints to automate tasks or integrate with other services.

### NetGrimoire Integrations
This service connects to `authentik` for OIDC authentication and `kuma` for monitoring.

---
## Operations

### Monitoring
[kuma.name: Mealie]
```bash
docker stack services mealie
docker stack logs -f mealie
```

### Backups
Critical vs reconstructable /DockerVol/mealie/data directory. Make sure to create a backup of this directory before making any changes.

### Restore
```bash
cd services/swarm/stack/mealie
./deploy.sh
```

---
## Common Failures
| Symptom | Cause | Fix |
|- **Service not accessible** | Incorrect environment variables | Verify that the `BASE_URL`, `OIDC_CLIENT_ID` and `OIDC_CLIENT_SECRET` are set correctly. |
|- **Crash on start-up** | Insufficient resources | Increase the resource allocation for the service or try reducing the number of workers. |

---
## Changelog

| Date | Commit | Summary |
|------|--------|---------|
| 2026-04-19 | bef8ba8a | Initial documentation and setup |
| 2026-04-19 | 148881ef | Added environment variables for OIDC authentication |
| 2026-04-16 | 5f37d59c | Updated labels for Caddy reverse proxy |

---
## Notes
- Generated by Gremlin on 2026-04-20T01:47:44.376Z
- Source: swarm/mealie.yaml
- Review User Guide and Changelog sections