services: caddy: image: lucaslorentz/caddy-docker-proxy:ci-alpine networks: - caddy ports: - "80:80" - "443:443" volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - ~/swarm-data/caddy/data:/data - ~/swarm-data/caddy/config:/config environment: - CADDY_INGRESS_NETWORKS=caddy - CLOUDFLARE_API_TOKEN_FILE=/run/secrets/cloudflare_api_token secrets: - cloudflare_api_token deploy: replicas: 1 placement: constraints: - node.role == manager restart_policy: condition: on-failure networks: caddy: external: true secrets: cloudflare_api_token: external: true