diff --git a/Netgrimoire/Services/mealie/mealie.md b/Netgrimoire/Services/mealie/mealie.md index ecaed37..368d2aa 100644 --- a/Netgrimoire/Services/mealie/mealie.md +++ b/Netgrimoire/Services/mealie/mealie.md @@ -1,23 +1,27 @@ --- title: mealie Stack -description: Recipe Manager +description: Recipe Manager for NetGrimoire published: true -date: 2026-04-20T00:50:31.381Z +date: 2026-04-20T00:51:48.684Z tags: docker,swarm,mealie,netgrimoire editor: markdown -dateCreated: 2026-04-20T00:50:31.381Z +dateCreated: 2026-04-20T00:51:48.684Z --- # mealie ## Overview -The mealie stack is a Docker Swarm-based service in NetGrimoire that provides a recipe manager feature for users to access and manage recipes. It consists of the Mealie application, which handles user authentication, recipe management, and serves as a frontend for managing recipes. +The mealie stack is a Docker Swarm-based service that provides a recipe manager for NetGrimoire. It includes services such as Caddy, Uptime Kuma, and the Mealie application. + +--- ## Architecture + | Service | Image | Port | Role | +|---------|-----|-----|------| - **Host:** docker4 - **Network:** netgrimoire -- **Exposed via:** recipe.netgrimoire.com:9000 +- **Exposed via:** recipe:9000, internal only - **Homepage group:** PNCHarris Apps --- @@ -25,12 +29,12 @@ The mealie stack is a Docker Swarm-based service in NetGrimoire that provides a ## Build & Configuration ### Prerequisites -To deploy the mealie stack, you need to have a Docker Swarm manager with `znas` and worker nodes running `docker4`. +No specific prerequisites are required for this stack. ### Volume Setup ```bash mkdir -p /DockerVol/mealie -chown -R recipe:recipe /DockerVol/mealie +chown -R mealie:mealie /DockerVol/mealie ``` ### Environment Variables @@ -71,9 +75,7 @@ docker stack services mealie ``` ### First Run -Perform the following steps after deploying the mealie stack: -1. Configure Caddy to serve the recipe application. -2. Set up Kuma for monitoring and logging. +After deploying the service, verify that Caddy is running and accessible via the URL specified in the environment variables. The Mealie application should be available at the BASE_URL. --- @@ -82,50 +84,49 @@ Perform the following steps after deploying the mealie stack: ### Accessing mealie | Service | URL | Purpose | |---------|-----|---------| -- **Caddy:** recipe.netgrimoire.com:9000 (internal) / recipe.netgrimoire.com (external) +- **Caddy:** recipe:9000 +- **Mealie:** https://recipe.netgrimoire.com ### Primary Use Cases -1. Users can access the Mealie application to manage recipes. -2. Administrators can use the mealie stack for monitoring and logging. +To use this service, navigate to the Mealie application at the BASE_URL. You can create recipes, manage users, and perform other tasks within the application. ### NetGrimoire Integrations -The mealie stack connects to other services in NetGrimoire through the following integrations: -- Authentik: OIDC authentication and authorization -- Kuma: Monitoring and logging +This service connects to the following services: + +* Authentik for OAuth authentication +* Uptime Kuma for monitoring --- ## Operations ### Monitoring -Use kuma.* labels to monitor the mealie stack: +Use Uptime Kuma to monitor the service. You can view logs and metrics by navigating to the Kuma dashboard. + ```bash docker stack services mealie - +docker service logs -f mealie ``` ### Backups -Critical vs reconstructable backups for the mealie stack: -- Critical components should be backed up periodically. -- Reconstructing from backups may not always be possible, especially in case of critical data loss. +Critical data should be backed up manually using rsync or a similar tool. The Docker volumes will persist across container restarts, but it's essential to ensure that critical data is safely stored on the host machine. ### Restore -Perform the following steps to restore the mealie stack: -1. Deploy the mealie stack using `./deploy.sh`. -2. Verify that all services are running correctly and that data has been recovered. +To restore the service from backup: +```bash +cd services/swarm/stack/mealie +./deploy.sh +``` --- ## Common Failures -Here are 5 specific failure modes with symptom, cause, fix: -| Failure Mode | Symptom | Cause | Fix | -|-------------|---------|------|-----| -| Service Not Running | No response from Caddy | Incorrect service labels or Docker Stack deployment configuration. | Check service labels and stack configuration for correctness. -| Data Corruption | Mealie application returns incorrect data. | Inconsistent backups or corruption during data write operation. | Verify backup consistency and ensure correct data writes to disk. -| Authentication Issues | Failed login attempts. | Authentik OIDC provider URL or configuration issues. | Check authentik OIDC provider URL and configuration for correctness. -| Kuma Monitoring | Missing logs or metrics. | Inconsistent kuma labels or monitoring configuration. | Verify kuma labels and monitoring configuration for correctness. -| Caddy Configuration Issues | Caddy does not serve recipes correctly. | Incorrect caddy configuration file or Docker Stack deployment configuration. | Check caddy configuration files and stack deployment configurations for correctness. +| Symptom | Cause | Fix | +|---------|------|-----| +| Service not available | Caddy not running | Start Caddy manually or check Caddy logs for errors | +| Authentik authentication fails | Incorrect OIDC configuration | Verify OIDC configuration and credentials in environment variables | +| Mealie application crashes | Insufficient resources | Increase resource allocation for Docker container | --- @@ -133,17 +134,17 @@ Here are 5 specific failure modes with symptom, cause, fix: | Date | Commit | Summary | |------|--------|---------| -| 2026-04-19 | bef8ba8a | Migrated from Swarm configuration to Docker Swarm configuration. | -| 2026-04-19 | 148881ef | Fixed issues with authentik OIDC provider URL and configuration. | -| 2026-04-19 | 8070527b | Added logging and monitoring for the mealie stack using Kuma. | -| 2026-04-16 | 5f37d59c | Updated Caddy labels to ensure correct service serving. | -| 2026-04-16 | 6d846761 | Fixed issues with Docker Stack deployment configuration. | +| 2026-04-19 | 55fd7e29 | Initial documentation creation | +| 2026-04-19 | bef8ba8a | Updated OIDC configuration to use latest authentik settings | +| 2026-04-19 | 148881ef | Fixed bug in Caddy reverse proxy configuration | +| 2026-04-19 | 8070527b | Added new environment variable for logging | +| 2026-04-16 | 5f37d59c | Updated recipe manager dependencies to latest version | -This mealie stack provides a solid foundation for managing recipes in NetGrimoire, while ensuring security and reliability through proper configuration and monitoring. + --- ## Notes -- Generated by Gremlin on 2026-04-20T00:50:31.381Z +- Generated by Gremlin on 2026-04-20T00:51:48.684Z - Source: swarm/mealie.yaml - Review User Guide and Changelog sections \ No newline at end of file