services: app: # Meta image: moonlight-deploy # Build pull_policy: build build: context: . dockerfile: Dockerfile args: HTTP_PROXY: ${HTTP_PROXY} HTTPS_PROXY: ${HTTPS_PROXY} # Requirements depends_on: database: condition: service_healthy # Networks networks: - moonlight ports: - "8080:8080" # Env Settings environment: # Database settings - "Moonlight__Database__Host=${DATABASE_HOST}" - "Moonlight__Database__Port=${DATABASE_PORT}" - "Moonlight__Database__Username=${DATABASE_USERNAME}" - "Moonlight__Database__Password=${DATABASE_PASSWORD}" - "Moonlight__Database__Database=${DATABASE_DATABASE}" # OIDC - "Moonlight__OIDC__Authority=${OIDC_AUTHORITY}" - "Moonlight__OIDC__ClientId=${OIDC_CLIENT_ID}" - "Moonlight__OIDC__ClientSecret=${OIDC_CLIENT_SECRET}" - "Moonlight__OIDC__RequireHttpsMetadata=${OIDC_REQUIRE_HTTPS_METADATA:-true}" - "Moonlight__OIDC__Scopes__0=openid" - "Moonlight__OIDC__Scopes__1=identify" - "Moonlight__OIDC__Scopes__2=email" # Logging - "Logging__LogLevel__Default=Information" - "Logging__LogLevel__Microsoft.AspNetCore=Warning" database: image: postgres:18.1 networks: - moonlight environment: - "POSTGRES_USER=${DATABASE_USERNAME}" - "POSTGRES_PASSWORD=${DATABASE_PASSWORD}" - "POSTGRES_DB=${DATABASE_DATABASE}" - "PGDATA=/pgdata" volumes: - ./data/database:/var/lib/postgresql/data healthcheck: test: [ "CMD", "pg_isready", "-q", "-d", $DATABASE_DATABASE, "-U", $DATABASE_USERNAME] interval: 10s timeout: 5s retries: 5 networks: moonlight: