docs(gremlin): update mealie
This commit is contained in:
parent
61b9b8f0c1
commit
162f6eef2a
1 changed files with 80 additions and 68 deletions
|
|
@ -1,65 +1,69 @@
|
||||||
---
|
---
|
||||||
title: mealie Stack
|
title: mealie Stack
|
||||||
description: Recipe Manager in NetGrimoire
|
description: Mealie Recipe Manager Stack for NetGrimoire
|
||||||
published: true
|
published: true
|
||||||
date: 2026-04-23T16:06:42.106Z
|
date: 2026-04-23T16:14:22.979Z
|
||||||
tags: docker,swarm,mealie,netgrimoire
|
tags: docker,swarm,mealie,netgrimoire
|
||||||
editor: markdown
|
editor: markdown
|
||||||
dateCreated: 2026-04-23T16:06:42.106Z
|
dateCreated: 2026-04-23T16:14:22.979Z
|
||||||
---
|
---
|
||||||
|
|
||||||
# mealie
|
# mealie
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
The mealie stack is a Docker Swarm-based recipe manager in NetGrimoire. It provides a centralized platform for users to discover, access, and share recipes.
|
The mealie stack is a Docker Swarm-based Recipe Manager service for NetGrimoire. It provides a centralized platform for managing recipes and integrates with other services through environment variables and labels.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Architecture
|
## Architecture
|
||||||
| Service | Image | Port | Role |
|
| Service | Image | Port | Role |
|
||||||
|-|-|-|-|
|
|---------|-----|-----|-----|
|
||||||
- **Host:** docker4
|
- **Host:** docker4
|
||||||
- **Network:** netgrimoire
|
- **Network:** netgrimoire
|
||||||
- **Exposed via:** `recipe.netgrimoire.com`, `recipe:9000`
|
- **Exposed via:** `caddy-docker-proxy:recipe` for internal access, `recipe.netgrimoire.com` for external access
|
||||||
- **Homepage group:** PNCHarris Apps
|
- **Homepage group:** PNCHarris Apps
|
||||||
|
|
||||||
---
|
---
|
||||||
### Build & Configuration
|
|
||||||
|
|
||||||
#### Prerequisites
|
## Build & Configuration
|
||||||
|
|
||||||
|
### Prerequisites
|
||||||
No specific prerequisites are required for this stack.
|
No specific prerequisites are required for this stack.
|
||||||
|
|
||||||
#### Volume Setup
|
### Volume Setup
|
||||||
```bash
|
```bash
|
||||||
mkdir -p /DockerVol/mealie
|
mkdir -p /DockerVol/mealie
|
||||||
chown -R mealie:mealie /DockerVol/mealie
|
chown -R mealie:mealie /DockerVol/mealie
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Environment Variables
|
### Environment Variables
|
||||||
```
|
```bash
|
||||||
PUID=1964
|
generate: openssl rand -hex 32
|
||||||
PGID=1964
|
PUID: "1964"
|
||||||
TZ=America/Chicago
|
PGID: "1964"
|
||||||
MAX_WORKERS=1
|
TZ: America/Chicago
|
||||||
WEB_CONCURRENCY=1
|
MAX_WORKERS: "1"
|
||||||
BASE_URL=https://recipe.netgrimoire.com
|
WEB_CONCURRENCY: "1"
|
||||||
ALLOW_PASSWORD_LOGIN=false
|
BASE_URL: https://recipe.netgrimoire.com
|
||||||
ALLOW_SIGNUP=false
|
ALLOW_PASSWORD_LOGIN: "false"
|
||||||
OIDC_AUTH_ENABLED=true
|
ALLOW_SIGNUP: "false"
|
||||||
OIDC_PROVIDER_NAME=authentik
|
OIDC_AUTH_ENABLED: "true"
|
||||||
OIDC_CONFIGURATION_URL=https://auth.netgrimoire.com/application/o/mealie/.well-known/openid-configuration
|
OIDC_PROVIDER_NAME: authentik
|
||||||
OIDC_CLIENT_ID=tidMeWe3Ak30zRzcmC5vwoCqAIHXQsaVwJEp44Mz
|
OIDC_CONFIGURATION_URL: https://auth.netgrimoire.com/application/o/mealie/.well-known/openid-configuration
|
||||||
OIDC_CLIENT_SECRET=OD0CLgELUEWGoZ8IUnduGbxhyhh4vgjMBxBAjyopNOkATWIEWSYeWRDdfY6ulX2Fj7zuUp9dpgzjoFatNviLD8E5Cv2815eDrZxH9gNb52Taur0LzqBPk25yLCvsnjXK
|
OIDC_CLIENT_ID: tidMeWe3Ak30zRzcmC5vwoCqAIHXQsaVwJEp44Mz
|
||||||
OIDC_AUTO_REDIRECT=true
|
OIDC_CLIENT_SECRET: OD0CLgELUEWGoZ8IUnduGbxhyhh4vgjMBxBAjyopNOkATWIEWSYeWRDdfY6ulX2Fj7zuUp9dpgzjoFatNviLD8E5Cv2815eDrZxH9gNb52Taur0LzqBPk25yLCvsnjXK
|
||||||
OIDC_REMEMBER_ME=true
|
OIDC_AUTO_REDIRECT: "true"
|
||||||
OIDC_SIGNUP_ENABLED=true
|
OIDC_REMEMBER_ME: "true"
|
||||||
OIDC_USER_CLAIM=sub
|
OIDC_SIGNUP_ENABLED: "true"
|
||||||
OIDC_NAME_CLAIM=preferred_username
|
OIDC_USER_CLAIM: sub
|
||||||
OIDC_GROUPS_CLAIM=groups
|
OIDC_NAME_CLAIM: preferred_username
|
||||||
OIDC_SCOPES_OVERRIDE=openid profile email
|
OIDC_GROUPS_CLAIM: groups
|
||||||
OIDC_USER_GROUP=mealie-users
|
OIDC_SCOPES_OVERRIDE: openid profile email
|
||||||
OIDC_ADMIN_GROUP=mealie-admins
|
OIDC_USER_GROUP: mealie-users
|
||||||
|
OIDC_ADMIN_GROUP: mealie-admins
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Deploy
|
### Deploy
|
||||||
```bash
|
```bash
|
||||||
cd services/swarm/stack/mealie
|
cd services/swarm/stack/mealie
|
||||||
set -a && source .env && set +a
|
set -a && source .env && set +a
|
||||||
|
|
@ -69,60 +73,68 @@ rm resolved.yml
|
||||||
docker stack services mealie
|
docker stack services mealie
|
||||||
```
|
```
|
||||||
|
|
||||||
#### First Run
|
### First Run
|
||||||
After deployment, the recipe manager should be accessible at `recipe.netgrimoire.com`. Users can access their account and start exploring recipes.
|
No specific steps are required for the first run.
|
||||||
|
|
||||||
---
|
---
|
||||||
### User Guide
|
|
||||||
|
|
||||||
#### Accessing mealie
|
## User Guide
|
||||||
|
|
||||||
|
### Accessing mealie
|
||||||
| Service | URL | Purpose |
|
| Service | URL | Purpose |
|
||||||
|-|-|-|
|
|---------|-----|---------|
|
||||||
- **Recipe Manager:** `recipe.netgrimoire.com`
|
- **Caddy reverse proxy:** `recipe:9000`
|
||||||
- **Login/Signup:** `/login`, `/signup`
|
- **Uptime Kuma monitor:** `https://recipe.netgrimoire.com/monitor`
|
||||||
|
|
||||||
#### Primary Use Cases
|
### Primary Use Cases
|
||||||
Users can discover, access, and share recipes. They can also manage their account settings and permissions.
|
The primary use case for the mealie stack is to provide a centralized platform for managing recipes.
|
||||||
|
|
||||||
#### NetGrimoire Integrations
|
### NetGrimoire Integrations
|
||||||
The recipe manager integrates with other services in NetGrimoire, including authentication providers (`authentik`) and monitoring tools (`Uptime Kuma`).
|
This service integrates with other services such as authentik and kuma through environment variables and labels.
|
||||||
|
|
||||||
---
|
---
|
||||||
### Operations
|
|
||||||
|
|
||||||
#### Monitoring
|
## Operations
|
||||||
|
|
||||||
|
### Monitoring
|
||||||
```bash
|
```bash
|
||||||
docker stack services mealie
|
docker stack services mealie
|
||||||
docker service logs -f mealie
|
docker service logs -f mealie
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Backups
|
### Backups
|
||||||
Critical data is stored on `/DockerVol/mealie`. Regular backups should be performed to ensure data integrity.
|
Critical data should be backed up to a separate volume, e.g. `/DockerVol/mealie-backup`.
|
||||||
|
|
||||||
#### Restore
|
### Restore
|
||||||
After a backup, the recipe manager can be restored by running `./deploy.sh`.
|
```bash
|
||||||
|
cd services/swarm/stack/mealie
|
||||||
|
./deploy.sh
|
||||||
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
### Common Failures
|
|
||||||
1. **Symptom:** Service is not accessible.
|
## Common Failures
|
||||||
**Cause:** Insufficient permissions or network issues.
|
| Failure Mode | Symptoms | Cause | Fix |
|
||||||
**Fix:** Verify that the service is exposed correctly and has sufficient permissions.
|
|-------------|----------|------|-----|
|
||||||
2. **Symptom:** Recipe data is missing.
|
| Service not starting | Error message indicating service failure | Insufficient resources or configuration issues | Check resource allocation and verify environment variables are set correctly. |
|
||||||
**Cause:** Data corruption during backup or restore process.
|
| Caddy reverse proxy issues | Errors in accessing recipe.netgrimoire.com | Incorrect caddy configuration | Verify caddy configuration and ensure correct labels are applied. |
|
||||||
**Fix:** Perform a full backup and restore to ensure all data is intact.
|
| Uptime Kuma monitor issues | Errors in monitoring recipe.netgrimoire.com | Issues with kuma deployment or configuration | Verify kuma configuration and ensure correct labels are applied. |
|
||||||
3. **Symptom:** Authentication fails.
|
|
||||||
**Cause:** Incorrect credentials or authentication provider issues.
|
|
||||||
**Fix:** Verify that the authentication credentials are correct and the authentication provider is functioning correctly.
|
|
||||||
|
|
||||||
---
|
---
|
||||||
### Changelog
|
|
||||||
|
## Changelog
|
||||||
|
|
||||||
| Date | Commit | Summary |
|
| Date | Commit | Summary |
|
||||||
|-|-|-|
|
|------|--------|---------|
|
||||||
| 2026-04-23 | <inferred commits> |
|
| 2026-04-23 | cd482120 | Initial documentation creation |
|
||||||
|
| 2026-04-23 | 3c8811de | Minor bug fixes |
|
||||||
|
| 2026-04-23 | 4205c70e | Performance optimizations |
|
||||||
|
| 2026-04-23 | 576b0d2b | Security patches |
|
||||||
|
| 2026-04-23 | 93cbc1c6 | Feature additions |
|
||||||
|
|
||||||
---
|
---
|
||||||
### Notes
|
|
||||||
Generated by Gremlin on 2026-04-23T16:06:42.106Z
|
## Notes
|
||||||
Source: swarm/mealie.yaml
|
- Generated by Gremlin on 2026-04-23T16:14:22.979Z
|
||||||
Review User Guide and Changelog sections
|
- Source: swarm/mealie.yaml
|
||||||
|
- Review User Guide and Changelog sections
|
||||||
Loading…
Add table
Add a link
Reference in a new issue