production/docker/traefik/docker-compose.yml
2025-04-06 08:40:12 +00:00

39 lines
1.4 KiB
YAML

services:
traefik:
ports:
- 80:80
- 443:443
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./acme:/acme
image: traefik:v3.3.5
networks:
- traefik
command:
- --log.level=TRACE
- --providers.docker=true
- --providers.docker.exposedByDefault=false
- --providers.docker.network=traefik
- --entryPoints.web.address=:80
- --entryPoints.websecure.address=:443
- --certificatesResolvers.letsencrypt.acme.dnsChallenge=true
- --certificatesResolvers.letsencrypt.acme.dnsChallenge.provider=cloudflare
- --certificatesResolvers.letsencrypt.acme.dnsChallenge.delayBeforeCheck=0
- --certificatesResolvers.letsencrypt.acme.dnsChallenge.resolvers=1.1.1.1:53,1.0.0.1:53
- --certificatesResolvers.letsencrypt.acme.storage=acme/acme.json
- --api.dashboard=true
labels:
- traefik.enable=true
- traefik.http.routers.RX.rule=Host(`yuuk1.uk`)
- traefik.http.routers.RX.entryPoints=websecure
- traefik.http.routers.RX.tls=true
- traefik.http.routers.RX.tls.certResolver=letsencrypt
- traefik.http.routers.RX.tls.domains[0].main=yuuk1.uk
- traefik.http.routers.RX.tls.domains[0].sans=*.yuuk1.uk
- traefik.http.routers.RX.service=api@internal
environment:
- CF_DNS_API_TOKEN=${CF_DNS_API_TOKEN}
networks:
traefik:
name: traefik