services: mealie: image: ghcr.io/mealie-recipes/mealie:v3.19.2@sha256:f68e959bf66f4f458893ea58facac71690fe6f2ac7a31466b5cecb41b4e99c02 container_name: mealie restart: unless-stopped environment: TZ: Europe/Berlin ALLOW_SIGNUP: "false" PUID: "99" PGID: "100" DB_ENGINE: postgres POSTGRES_SERVER: mealie-postgres POSTGRES_DB: mealie POSTGRES_USER: mealie POSTGRES_PASSWORD: ${MEALIE_POSTGRES_PASSWORD} BASE_URL: https://mealie.kaleschke.info volumes: - /mnt/user/appdata/mealie/data:/app/data networks: - frontend_net - mealie_internal security_opt: - no-new-privileges:true labels: - traefik.enable=true - traefik.docker.network=frontend_net - traefik.http.routers.mealie.rule=Host(`mealie.kaleschke.info`) - traefik.http.routers.mealie.entrypoints=websecure - traefik.http.routers.mealie.tls=true - traefik.http.routers.mealie.tls.certresolver=le - traefik.http.services.mealie.loadbalancer.server.port=9000 mealie-postgres: image: postgres:18.4@sha256:8ff36f3c66371cba71d20ceedccfc3de9669a68737607888c4ef0af93abe8e39 container_name: mealie-postgres restart: unless-stopped environment: TZ: Europe/Berlin POSTGRES_USER: mealie POSTGRES_DB: mealie POSTGRES_PASSWORD_FILE: /run/secrets/postgres_password PGDATA: /var/lib/postgresql/18/docker volumes: - /mnt/user/appdata/mealie/postgres18:/var/lib/postgresql - /mnt/user/appdata/secrets/mealie_postgres_password.txt:/run/secrets/postgres_password:ro networks: - mealie_internal security_opt: - no-new-privileges:true networks: frontend_net: external: true mealie_internal: driver: bridge internal: true