# Docker Compose für Production Server mit Traefik services: ausgaben-app: image: docker.citysensor.de/ausgaben-next:latest container_name: ausgaben-next-app restart: unless-stopped expose: - 3000 environment: - NODE_ENV=production - DB_HOST=${DB_HOST} - DB_USER=${DB_USER} - DB_PASS=${DB_PASS} - DB_NAME=${DB_NAME} - AUTH_USERS=${AUTH_USERS} - AUTH_SECRET=${AUTH_SECRET} # Passkeys (WebAuthn): Host bzw. volle URL der Anwendung. # Achtung: Die .env auf dem Server wird von mehreren Apps im selben Stack # geteilt und belegt RP_ID/RP_ORIGIN bereits für werte-next. Deshalb hier # die app-eigenen Namen AUSGABEN_RP_* verwenden. - RP_ID=${AUSGABEN_RP_ID:-ausgaben.fuerst-stuttgart.de} - RP_ORIGIN=${AUSGABEN_RP_ORIGIN:-https://ausgaben.fuerst-stuttgart.de} - RP_NAME=${AUSGABEN_RP_NAME:-Ausgaben-Log} labels: - traefik.enable=true - traefik.http.routers.ausgaben.entrypoints=http - traefik.http.routers.ausgaben.rule=Host(`ausgaben.fuerst-stuttgart.de`) - traefik.http.middlewares.ausgaben-https-redirect.redirectscheme.scheme=https - traefik.http.routers.ausgaben.middlewares=ausgaben-https-redirect - traefik.http.routers.ausgaben-secure.entrypoints=https - traefik.http.routers.ausgaben-secure.rule=Host(`ausgaben.fuerst-stuttgart.de`) - traefik.http.routers.ausgaben-secure.tls=true - traefik.http.routers.ausgaben-secure.tls.certresolver=letsencrypt - traefik.http.routers.ausgaben-secure.service=ausgaben - traefik.http.services.ausgaben.loadbalancer.server.port=3000 networks: - proxy - gitea-internal networks: proxy: name: dockge_default external: true gitea-internal: name: gitea_gitea-internal external: true