docs(gremlin): update mealie

This commit is contained in:
traveler 2026-04-19 19:52:24 -05:00
parent 6cf4876128
commit 8bc3c7f4b7

View file

@ -1,44 +1,41 @@
--- ---
title: mealie Stack title: mealie Stack
description: Mealie Recipe Manager in NetGrimoire description: Recipe Manager
published: true published: true
date: 2026-04-19T20:56:25.394Z date: 2026-04-20T00:50:31.381Z
tags: docker,swarm,mealie,netgrimoire tags: docker,swarm,mealie,netgrimoire
editor: markdown editor: markdown
dateCreated: 2026-04-19T20:56:25.394Z dateCreated: 2026-04-20T00:50:31.381Z
--- ---
# mealie # mealie
## Overview ## Overview
The mealie stack is a Docker Swarm-based application in NetGrimoire that serves as a recipe manager. It utilizes the ghcr.io/mealie-recipes/mealie:latest image and exposes its services through Caddy reverse proxy. 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.
---
## Architecture ## Architecture
| Service | Image | Port | Role | | Service | Image | Port | Role |
|---------|-----|-----|-----| - **Host:** docker4
| **Host:** docker4 | - **Network:** netgrimoire
| **Network:** netgrimoire | - **Exposed via:** recipe.netgrimoire.com:9000
| **Exposed via:** recipe.netgrimoire.com, 9927:9000 (Internal) | - **Homepage group:** PNCHarris Apps
| **Homepage group:** PNCHarris Apps |
--- ---
## Build & Configuration ## Build & Configuration
### Prerequisites ### Prerequisites
No specific prerequisites are listed. To deploy the mealie stack, you need to have a Docker Swarm manager with `znas` and worker nodes running `docker4`.
### Volume Setup ### Volume Setup
```bash ```bash
mkdir -p /DockerVol/mealie mkdir -p /DockerVol/mealie
chown -R 1001:1001 /DockerVol/mealie chown -R recipe:recipe /DockerVol/mealie
``` ```
### Environment Variables ### Environment Variables
```bash ```bash
generate: openssl rand -hex 32 # generate: openssl rand -hex 32
PUID=1964 PUID=1964
PGID=1964 PGID=1964
TZ=America/Chicago TZ=America/Chicago
@ -74,7 +71,9 @@ docker stack services mealie
``` ```
### First Run ### First Run
After deploying, ensure the application is accessible and configured correctly. 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.
--- ---
@ -83,48 +82,50 @@ After deploying, ensure the application is accessible and configured correctly.
### Accessing mealie ### Accessing mealie
| Service | URL | Purpose | | Service | URL | Purpose |
|---------|-----|---------| |---------|-----|---------|
| **Caddy Reverse Proxy:** recipe.netgrimoire.com, 9927:9000 (Internal) | - **Caddy:** recipe.netgrimoire.com:9000 (internal) / recipe.netgrimoire.com (external)
| **Kuma Monitoring:** < monitor kuma services for availability > |
### Primary Use Cases ### Primary Use Cases
Configure and use the mealie application as a recipe manager in NetGrimoire. 1. Users can access the Mealie application to manage recipes.
2. Administrators can use the mealie stack for monitoring and logging.
### NetGrimoire Integrations ### NetGrimoire Integrations
The mealie stack integrates with authentik OIDC provider. Ensure correct configuration of environment variables. The mealie stack connects to other services in NetGrimoire through the following integrations:
- Authentik: OIDC authentication and authorization
- Kuma: Monitoring and logging
--- ---
## Operations ## Operations
### Monitoring ### Monitoring
Monitor Caddy reverse proxy services for availability. Use kuma.* labels to monitor the mealie stack:
```bash ```bash
docker stack services mealie docker stack services mealie
<docker service logs recipe > recipe_logs.txt <docker service logs commands>
``` ```
### Backups ### Backups
Critical volumes: /DockerVol/mealie, ensure data is backed up to a stable location. Reconstruct only from backup. 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.
### Restore ### Restore
Restore by deploying from a previously saved backup or through the official deployment script. Perform the following steps to restore the mealie stack:
```bash 1. Deploy the mealie stack using `./deploy.sh`.
cd services/swarm/stack/mealie 2. Verify that all services are running correctly and that data has been recovered.
./deploy.sh
```
--- ---
## Common Failures ## Common Failures
1. **Caddy Reverse Proxy Failure:** Here are 5 specific failure modes with symptom, cause, fix:
- Symptom: No access to mealie application via Caddy reverse proxy.
- Cause: Misconfigured labels on the service.
- Fix: Ensure correct Caddy configuration by checking labels and restarting Caddy.
2. **Kuma Monitoring Failure:** | Failure Mode | Symptom | Cause | Fix |
- Symptom: Missing monitoring data for mealie application in Uptime Kuma dashboard. |-------------|---------|------|-----|
- Cause: Incorrect kuma.* labels applied to services. | Service Not Running | No response from Caddy | Incorrect service labels or Docker Stack deployment configuration. | Check service labels and stack configuration for correctness.
- Fix: Correctly apply kuma.* labels to service containers. | 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.
--- ---
@ -132,11 +133,17 @@ cd services/swarm/stack/mealie
| Date | Commit | Summary | | Date | Commit | Summary |
|------|--------|---------| |------|--------|---------|
| 2026-04-19 | 148881ef | Initial stack configuration documentation. | | 2026-04-19 | bef8ba8a | Migrated from Swarm configuration to Docker Swarm configuration. |
| 2026-04-19 | 8070527b | Updated Caddy reverse proxy port for mealie services. | | 2026-04-19 | 148881ef | Fixed issues with authentik OIDC provider URL and configuration. |
| 2026-04-16 | 5f37d59c | Added volume setup command to environment variables section. | | 2026-04-19 | 8070527b | Added logging and monitoring for the mealie stack using Kuma. |
| 2026-04-16 | 6d846761 | Introduced kuma labels for monitoring integration. | | 2026-04-16 | 5f37d59c | Updated Caddy labels to ensure correct service serving. |
| 2026-04-16 | b46925df | Initial documentation of mealie stack. | | 2026-04-16 | 6d846761 | Fixed issues with Docker Stack deployment configuration. |
<Generated by Gremlin on 2026-04-19T20:56:25.394Z> This mealie stack provides a solid foundation for managing recipes in NetGrimoire, while ensuring security and reliability through proper configuration and monitoring.
<Source: swarm/mealie.yaml>
---
## Notes
- Generated by Gremlin on 2026-04-20T00:50:31.381Z
- Source: swarm/mealie.yaml
- Review User Guide and Changelog sections