version: '3' services: db: image: postgres:16.5@sha256:53f3e608f9475ce120ced2d0f430b89458d7faa28530e0b0977a6af64d294877 restart: unless-stopped volumes: - db-data:/var/lib/postgresql/data environment: - POSTGRES_PASSWORD=${DC_VIKUNJA_POSTGRES_PASSWORD:?} - POSTGRES_DB=${DC_VIKUNJA_POSTGRES_DB:-db} healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres"] interval: 5s timeout: 5s retries: 5 networks: - vikunja vikunja: image: vikunja/vikunja:0.24.5@sha256:1fb8454c9c04f3a86d16f9c8b9fa6cdbf685b6e6e3ff1da1d7ff3374bdbe46ad environment: VIKUNJA_DATABASE_HOST: db VIKUNJA_DATABASE_PASSWORD: ${DC_VIKUNJA_POSTGRES_PASSWORD:?} VIKUNJA_DATABASE_TYPE: postgres VIKUNJA_DATABASE_USER: postgres VIKUNJA_DATABASE_DATABASE: ${DC_VIKUNJA_POSTGRES_DB:-db} VIKUNJA_SERVICE_PUBLICURL: https://${DC_VIKUNJA_HOSTNAME:?} VIKUNJA_SERVICE_JWTSECRET: ${DC_VIKUNJA_JWTSECRET:?} VIKUNJA_SERVICE_ENABLETASKATTACHMENTS: 1 VIKUNJA_SERVICE_ENABLEREGISTRATION: 1 VIKUNJA_SERVICE_ENABLEEMAILREMINDERS: 1 VIKUNJA_MAILER_ENABLED: 1 VIKUNJA_MAILER_FORCESSL: 1 VIKUNJA_MAILER_HOST: ${DC_VIKUNJA_SMTP_HOST:-mail.martin.md} VIKUNJA_MAILER_PORT: ${DC_VIKUNJA_SMTP_PORT:-587} VIKUNJA_MAILER_USERNAME: ${DC_VIKUNJA_SMTP_USER:-noreply@martin.md} VIKUNJA_MAILER_PASSWORD: ${DC_VIKUNJA_SMTP_PWD:?} volumes: - files:/app/vikunja/files - /srv/docker/vikunja-config.yml:/app/vikunja/config.yml labels: - "traefik.enable=true" - "traefik.http.routers.vikunja.rule=Host(`${DC_VIKUNJA_HOSTNAME:?}`)" - "traefik.http.routers.vikunja.entrypoints=websecure" depends_on: db: condition: service_healthy restart: unless-stopped networks: - vikunja - traefik networks: vikunja: external: false traefik: external: true volumes: db-data: files: