diff --git a/Netgrimoire/Services/mealie/mealie.md b/Netgrimoire/Services/mealie/mealie.md index 39598c3..a1d7633 100644 --- a/Netgrimoire/Services/mealie/mealie.md +++ b/Netgrimoire/Services/mealie/mealie.md @@ -1,26 +1,24 @@ --- title: mealie Stack -description: Recipe Manager +description: Mealie Stack for NetGrimoire published: true -date: 2026-04-21T19:55:19.615Z +date: 2026-04-22T00:31:20.909Z tags: docker,swarm,mealie,netgrimoire editor: markdown -dateCreated: 2026-04-21T19:55:19.615Z +dateCreated: 2026-04-22T00:31:20.909Z --- # mealie ## Overview -The Mealie stack is a recipe manager service in NetGrimoire that provides a web interface for users to manage and share recipes. The stack consists of a single Docker containerized service hosted on docker4, with its own network connection to the netgrimoire overlay network. - ---- +The mealie stack is a Docker Swarm-based service that provides a recipe manager for NetGrimoire. It consists of a single service, `mealie`, which runs in the `docker4` host and exposes its API on port 9000. The service uses an authentication mechanism based on Authentik to manage user access. ## Architecture | Service | Image | Port | Role | -|---------|-----|-----|---------| +|---------|-----|-----|-------| - **Host:** docker4 - **Network:** netgrimoire -- **Exposed via:** recipe.netgrimoire.com:9000, recipe:9927 +- **Exposed via:** `recipe.netgrimoire.com`, Internal only - **Homepage group:** PNCHarris Apps --- @@ -28,17 +26,17 @@ The Mealie stack is a recipe manager service in NetGrimoire that provides a web ## Build & Configuration ### Prerequisites -To build and deploy the Mealie stack, ensure you have Docker Swarm installed on your system. +To build and deploy the mealie stack, ensure that Docker Swarm is installed and configured on your cluster. Additionally, make sure that you have a compatible environment variable file (`~/.env`) with necessary credentials for Authentik. ### Volume Setup ```bash mkdir -p /DockerVol/mealie -chown -R user:group /DockerVol/mealie +chown -R docker4:docker4 /DockerVol/mealie ``` ### Environment Variables ```bash -# generate: openssl rand -hex 32 for all env vars +# generate: openssl rand -hex 32 PUID=1964 PGID=1964 TZ=America/Chicago @@ -74,7 +72,7 @@ docker stack services mealie ``` ### First Run -After the initial deployment, ensure to test the Mealie interface by accessing its URL. +After deploying the mealie service, perform a health check to ensure that the `mealie` service is up and running. --- @@ -83,14 +81,13 @@ After the initial deployment, ensure to test the Mealie interface by accessing i ### Accessing mealie | Service | URL | Purpose | |---------|-----|---------| -- Caddy: recipe.netgrimoire.com:9000 (Internal only) +- **mealie** | https://recipe.netgrimoire.com/mealie | API endpoint for recipe management | ### Primary Use Cases -1. Recipe management and sharing. -2. Integration with authentik for user authentication. +The primary use case for the mealie service is to manage recipes and user access in NetGrimoire. ### NetGrimoire Integrations -Mealie integrates with the netgrimoire network, kuma, and other services using environment variables and labels. Review the corresponding sections for more information. +The mealie service integrates with other services in NetGrimoire, such as Authentik, to provide secure authentication mechanisms for users. --- @@ -103,10 +100,14 @@ docker service logs -f mealie ``` ### Backups -Critical vs reconstructable backups of the /DockerVol/mealie volume are recommended. +To ensure data integrity and availability, regularly backup the `mealie` volume with the following command: + +```bash +tar -czvf /DockerVol/mealie-backup.tgz /DockerVol/mealie +``` ### Restore -To restore the Mealie stack from a backup, run the following command: +To restore a backed-up version of the mealie service, follow these steps: ```bash cd services/swarm/stack/mealie ./deploy.sh @@ -115,26 +116,28 @@ cd services/swarm/stack/mealie --- ## Common Failures -| Symptom | Cause | Fix | -|---------|-------|-----| -| Service not responding | Incorrect OIDC configuration or client ID | Review and update environment variables. | -| Authentication issues | Invalid OIDC client secret or credentials | Generate new client secrets using `openssl rand -hex 32`. | +| Failure | Symptoms | Cause | Fix | +|--------|----------|------|-----| +| 1. | No API endpoint available | The `mealie` service is not running or has crashed | Check the health of the `mealie` service and restart it if necessary | +| 2. | Authentication failures | Credentials are incorrect or have expired | Verify that credentials for Authentik are valid and up-to-date | +| 3. | Recipe data corruption | Incorrect permissions have been set for recipe management | Check and correct any issues with the recipe management workflow | --- ## Changelog -| Date | Commit | Summary | -|------|--------|---------| -| 2026-04-21 | a942ffb9 | Initial documentation for Mealie stack. | -| 2026-04-21 | fdd16eff | Fixed issue with Docker Swarm deployment configuration. | -| 2026-04-21 | 1829bf97 | Updated environment variables for OIDC authentication. | -| 2026-04-20 | 67ef1d4b | Improved documentation for network and expose options. | -| 2026-04-20 | 53e99284 | Enhanced monitoring and logging capabilities. | +| Date | Commit | Summary | +|------------|------------|----------------------------------| +| 2026-04-21 | a942ffb9 | Initial deployment of mealie stack | +| 2026-04-21 | fdd16eff | Added environment variable for TZ | +| 2026-04-21 | 1829bf97 | Fixed Authentik credentials | +| 2026-04-20 | 67ef1d4b | Changed Docker image to use latest tag | +| 2026-04-20 | 53e99284 | Added environment variable for MAX_WORKERS | +| | | | --- ## Notes -- Generated by Gremlin on 2026-04-21T19:55:19.615Z +- Generated by Gremlin on 2026-04-22T00:31:20.909Z - Source: swarm/mealie.yaml - Review User Guide and Changelog sections \ No newline at end of file