version: "3.3" services: traefik: image: "traefik:v2.4" command: #- "--log.level=DEBUG" - "--api.insecure=false" - "--providers.docker=true" - "--providers.docker.exposedbydefault=false" - "--entrypoints.web.address=:80" - "--entrypoints.websecure.address=:443" - "--certificatesresolvers.myresolver.acme.tlschallenge=true" - "--certificatesresolvers.myresolver.acme.httpchallenge.entrypoint=web" #- "--certificatesresolvers.myresolver.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory" - "--certificatesresolvers.myresolver.acme.email=marvin.sextro@gmail.com" - "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json" - "--entrypoints.web.http.redirections.entryPoint.to=websecure" - "--entrypoints.web.http.redirections.entryPoint.scheme=https" - "--entrypoints.web.http.redirections.entrypoint.permanent=true" ports: - "80:80" - "443:443" - "8080:8080" volumes: - "./letsencrypt:/letsencrypt" - "/var/run/docker.sock:/var/run/docker.sock:ro" covidpass-api: image: "marvinsxtr/covidpass-api:latest" restart: "unless-stopped" environment: - NODE_ENV=production ports: - "8000:8000" labels: - "traefik.enable=true" - "traefik.http.routers.covidpass-api.rule=Host(`api.covidpass.marvinsextro.de`)" - "traefik.http.routers.covidpass-api.entrypoints=websecure" - "traefik.http.routers.covidpass-api.tls.certresolver=myresolver" secrets: - env covidpass: image: "marvinsxtr/covidpass:latest" restart: "unless-stopped" environment: - NODE_ENV=production ports: - "3000:3000" labels: - "traefik.enable=true" - "traefik.http.routers.covidpass.rule=Host(`covidpass.marvinsextro.de`)" - "traefik.http.routers.covidpass.entrypoints=websecure" - "traefik.http.routers.covidpass.tls.certresolver=myresolver" depends_on: - covidpass-api secrets: env: file: ./.env