services: server: image: docker.io/actualbudget/actual-server:25.6.0@sha256:224014dd009a57df7e02e8343bc216b2bd143ec10683a3c1de36cadee7553e56 environment: - ACTUAL_LOGIN_METHOD=openid - ACTUAL_OPENID_DISCOVERY_URL=${DC_ACTUAL_OPENID_DISCOVERY_URL:?} - ACTUAL_OPENID_CLIENT_ID=${DC_ACTUAL_OPENID_CLIENT_ID:?} - ACTUAL_OPENID_CLIENT_SECRET=${DC_ACTUAL_OPENID_CLIENT_SECRET:?} - ACTUAL_OPENID_SERVER_HOSTNAME=https://${DC_ACTUAL_HOSTNAME:?} - ACTUAL_OPENID_ENFORCE=true labels: - "traefik.enable=true" - "traefik.http.routers.actual.rule=Host(`${DC_ACTUAL_HOSTNAME:?}`)" - "traefik.http.routers.actual.entrypoints=websecure" - "traefik.http.services.actual.loadbalancer.server.port=${DC_ACTUAL_PORT:?}" networks: - traefik volumes: - data:/data healthcheck: # Enable health check for the instance test: ['CMD-SHELL', 'node src/scripts/health-check.js'] interval: 60s timeout: 10s retries: 3 start_period: 20s restart: unless-stopped volumes: data: networks: traefik: external: true