name: stoat networks: web: external: true name: web services: # Caddy: Web server caddy: image: docker.io/caddy restart: unless-stopped env_file: .env.web volumes: - ./Caddyfile:/etc/caddy/Caddyfile - ./data/caddy-data:/data - ./data/caddy-config:/config labels: # Explicitly tell Traefik to expose this container - traefik.enable=true - traefik.docker.network=web # HTTPS - traefik.http.services.stoat-service-secure.loadbalancer.server.port=80 - traefik.http.routers.stoat-secure.service=stoat-service-secure - traefik.http.routers.stoat-secure.entrypoints=websecure - traefik.http.routers.stoat-secure.tls.certresolver=le - traefik.http.routers.stoat-secure.rule=Host(`stoat.mistergeek.fr`) # - traefik.http.routers.stoat-secure.rule=Host(`stoat.stoat.net`) - traefik.http.middlewares.stoat-secure-cache.compress=true # HTTP - traefik.http.services.stoat-service-insecure.loadbalancer.server.port=80 - traefik.http.routers.stoat-insecure.service=stoat-service-insecure - traefik.http.routers.stoat-insecure.entrypoints=web - traefik.http.routers.stoat-insecure.rule=Host(stoat.mistergeek.fr) # - traefik.http.routers.stoat-insecure.rule=Host(`stoat.stoat.net`) - traefik.http.middlewares.stoat-insecure-cache.compress=true - traefik.http.routers.traefik.tls=true - traefik.http.routers.traefik.tls.certresolver=le # GZIP - traefik.http.routers.traefik.middlewares=traefik-compress - traefik.http.middlewares.traefik-compress.compress=true networks: - web