From 26eedf0e3d2e49cad4133ba06bbc4446ea28b915 Mon Sep 17 00:00:00 2001 From: admin Date: Tue, 30 Jun 2026 23:34:14 -0700 Subject: [PATCH] refactor(mealie): move to folder-based layout --- mealie/mealie.yaml | 71 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 mealie/mealie.yaml diff --git a/mealie/mealie.yaml b/mealie/mealie.yaml new file mode 100644 index 0000000..d100cdf --- /dev/null +++ b/mealie/mealie.yaml @@ -0,0 +1,71 @@ +services: + mealie-v1: + image: ghcr.io/mealie-recipes/mealie:latest + hostname: food + networks: + - traefik_backend + - postgresql_db-backend + volumes: + - /volume1/docker/Mealie/app/data:/app/data/ + environment: + # Set Backend ENV Variables Here + - ALLOW_SIGNUP=true + - PUID=1000 + - PGID=1000 + - TZ=America/Anchorage + - MAX_WORKERS=1 + - WEB_CONCURRENCY=1 + - BASE_URL=https://food.${DOMAIN} + + # Database Settings + - DB_ENGINE=postgres + - POSTGRES_USER=mealie + - POSTGRES_PASSWORD_FILE=/run/secrets/mealie_db_password + - POSTGRES_SERVER=${POSTGRES_HOST} + - POSTGRES_PORT=${POSTGRES_PORT} + - POSTGRES_DB=mealie-v1 + + #LDAP Settings + - LDAP_AUTH_ENABLED=TRUE + - LDAP_SERVER_URL=ldap://${LDAP_HOST} + - LDAP_TLS_INSECURE=TRUE + - LDAP_ENABLE_STARTTLS=TRUE + - LDAP_BASE_DN=${LDAP_BASE_DN} + - LDAP_QUERY_BIND=${LDAP_QUERY_BIND} + - LDAP_QUERY_PASSWORD_FILE=/run/secrets/mealie_ldap_query_password + - LDAP_ADMIN_FILTER=(memberOf=${LDAP_ADMIN_GROUP}) + - LDAP_ID_ATTRIBUTE=sAMAccountName + - LDAP_NAME_ATTRIBUTE=displayName + - LDAP_MAIL_ATTRIBUTE=mail + + secrets: + - mealie_db_password + - mealie_ldap_query_password + restart: always + deploy: + labels: + - traefik.enable=true + - traefik.http.routers.mealie.rule=Host(`food.${DOMAIN}`) + - traefik.http.routers.mealie.tls=true + - traefik.http.routers.mealie.tls.certresolver=letsencrypt + - traefik.http.routers.mealie.entrypoints=websecure + - traefik.http.services.mealie.loadbalancer.server.port=9000 + - traefik.swarm.network=traefik_backend + - traefik.http.routers.mealie.middlewares=crowdsec@file #auth + - autoheal=true + resources: + limits: + cpus: '2' # Limit to 0.5 CPU core + memory: 512M + +secrets: + mealie_db_password: + external: true + mealie_ldap_query_password: + external: true + +networks: + postgresql_db-backend: + external: true + traefik_backend: + external: true