version: "3.8" volumes: traefik: name: ${TRAEFIK_VOLUME_NAME:-traefik} networks: traefik: name: ${TRAEFIK_NETWORK_NAME:-traefik} services: traefik: container_name: ${TRAEFIK_CONTAINER_NAME:-traefik} image: ${TRAEFIK_IMAGE:-traefik:v2.10.4} restart: always volumes: - /var/run/docker.sock:/var/run/docker.sock - traefik:/traefik - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - target: 80 published: 80 protocol: tcp mode: host networks: - traefik command: - --api.insecure=${TRAEFIK_API_INSECURE:-true} - --api.disabledashboardad=${TRAEFIK_API_DISABLEDASHBOARDAD:-true} - --log.level=${TRAEFIK_LOG_LEVEL:-INFO} - --global.sendanonymoususage=${TRAEFIK_GLOBAL_SENDANONYMOUSUSAGE:-false} - --global.checknewversion=${TRAEFIK_GLOBAL_CHECKNEWVERSION:-false} - --metrics.prometheus=${TRAEFIK_METRICS_PROMETHEUS:-true} - --accesslog=${TRAEFIK_ACCESSLOG:-false} - --providers.docker - --providers.docker.exposedbydefault=false - --providers.docker.network=${TRAEFIK_NETWORK_NAME:-traefik} - --entryPoints.traefik.address=:8080 - --entrypoints.${TRAEFIK_ENTRYPOINTS:-web}.address=:80 - --entryPoints.${TRAEFIK_ENTRYPOINTS:-web}.forwardedHeaders.insecure labels: - traefik.enable=true - traefik.http.routers.traefik.rule=Host(`${TRAEFIK_DOMAIN:?err}`) - traefik.http.routers.traefik.entrypoints=${TRAEFIK_ENTRYPOINTS:-web} - traefik.http.services.traefik.loadbalancer.server.port=8080