name: mealie services: mealie: image: ghcr.io/mealie-recipes/mealie:v2.8.0 container_name: mealie depends_on: db_pg17: condition: service_healthy deploy: resources: limits: memory: 1000M restart: unless-stopped volumes: - data:/app/data/ networks: - internal - proxy environment: POSTGRES_DB_FILE: /run/secrets/db_name POSTGRES_USER_FILE: /run/secrets/db_user POSTGRES_PASSWORD_FILE: /run/secrets/db_pass DB_ENGINE: postgres POSTGRES_SERVER: db_pg17 POSTGRES_PORT: 5432 ALLOW_SIGNUP: False TZ: Europe/Berlin SMTP_HOST_FILE: /run/secrets/smtp_host SMTP_PORT: 587 SMTP_USER_FILE: /run/secrets/smtp_user SMTP_PASSWORD_FILE: /run/secrets/smtp_pass SMTP_FROM_NAME: Mealie SMTP_AUTH_STRATEGY: TLS OIDC_AUTH_ENABLED: True OIDC_SIGNUP_ENABLED: True OIDC_AUTO_REDIRECT: True OIDC_REMEMBER_ME: True OIDC_USER_CLAIM: email OIDC_NAME_CLAIM: name OIDC_USER_GROUP: mealie_user OIDC_ADMIN_GROUP: mealie_admin OIDC_CLIENT_SECRET_FILE: /run/secrets/oidc_client_secret OIDC_CLIENT_ID_FILE: /run/secrets/oidc_client_id OIDC_CONFIGURATION_URL_FILE: /run/secrets/oidc_url secrets: - db_name - db_user - db_pass - BASE_URL - smtp_host - SMTP_FROM_EMAIL - smtp_user - smtp_pass - oidc_url - oidc_client_id - oidc_client_secret db_pg17: image: postgres:17.4 container_name: mealie_db_pg17 restart: unless-stopped healthcheck: test: [ "CMD-SHELL", "pg_isready -d `cat $$POSTGRES_DB_FILE` -U `cat $$POSTGRES_USER_FILE`" ] start_period: 20s interval: 30s retries: 5 timeout: 5s volumes: - db_pg17:/var/lib/postgresql/data networks: - internal environment: - POSTGRES_DB_FILE=/run/secrets/db_name - POSTGRES_USER_FILE=/run/secrets/db_user - POSTGRES_PASSWORD_FILE=/run/secrets/db_pass secrets: - db_name - db_user - db_pass volumes: data: name: mealie_data db_pg17: name: mealie_db_pg17 networks: internal: name: internal-mealie proxy: name: proxy-mealie external: true secrets: db_name: file: /srv/docker/secrets/mealie/db/name.txt db_user: file: /srv/docker/secrets/mealie/db/user.txt db_pass: file: /srv/docker/secrets/mealie/db/pass.key BASE_URL: file: /srv/docker/secrets/mealie/base_url.txt SMTP_FROM_EMAIL: file: /srv/docker/secrets/mealie/mail_from.txt smtp_host: file: /srv/docker/secrets/mail/host.txt smtp_user: file: /srv/docker/secrets/mail/user.txt smtp_pass: file: /srv/docker/secrets/mail/pass.key oidc_url: file: /srv/docker/secrets/mealie/oidc/url.txt oidc_client_id: file: /srv/docker/secrets/mealie/oidc/client_id.txt oidc_client_secret: file: /srv/docker/secrets/mealie/oidc/client_secret.key