version: '3.3' services: reverse-proxy: # The official v2 Traefik docker image image: traefik:v2.10 # Enables the web UI and tells Traefik to listen to docker command: #- "--log.level=DEBUG" - "--api.insecure=true" - "--providers.docker=true" - "--providers.docker.exposedbydefault=false" - "--providers.file.directory=/traefik/conf" - "--providers.file.watch=true" - "--entrypoints.websecure.address=:443" - "--entrypoints.web.address=:80" - "--certificatesresolvers.myresolver.acme.tlschallenge=true" - "--certificatesresolvers.myresolver.acme.email=${TRAEFIK_ADMIN_EMAIL}" - "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json" networks: - backend ports: - ${TRAEFIK_PORT_HTTP}:80 # The HTTP port - ${TRAEFIK_PORT_HTTPS}:443 # The HTTP port - ${TRAEFIK_BACKEND_PORT}:8080 # The Web UI (enabled by --api.insecure=true) volumes: - /var/run/docker.sock:/var/run/docker.sock # So that Traefik can listen to the Docker events - ${TRAEFIK_DIR}:/traefik - ${TRAEFIK_CERT_DIR}:/letsencrypt # For SSL certificates networks: backend: external: true