Files
sablier/plugins/traefik/examples/multiple_containers/docker-stack.yml
Alexis Couvreur 551a146d94 feat: merge service repository into Sablier
Add plugins folder to integrate with multiple reverse proxies

The project is now released as 'Sablier'
2022-10-03 20:27:06 +00:00

66 lines
2.3 KiB
YAML

version: "3.9"
services:
traefik:
image: traefik
command:
- --api=true
- --api.insecure=true
- --pilot.token=$TRAEFIK_PILOT_TOKEN
- --experimental.plugins.sablier.moduleName=github.com/acouvreur/sablier/plugins/traefik
- --experimental.plugins.sablier.version=v1.2.0
- --providers.docker=true
- --providers.docker.swarmmode=true
- --providers.file.filename=/etc/traefik/dynamic-config.yml
- --entrypoints.http.address=:80
- --entrypoints.https.address=:443
ports:
- "80:80"
- "443:443"
- "8080:8080"
volumes:
- '/var/run/docker.sock:/var/run/docker.sock'
sablier:
image: ghcr.io/acouvreur/sablier:1
command:
- --swarmMode=true
volumes:
- '/var/run/docker.sock:/var/run/docker.sock'
deploy:
labels:
- traefik.enable=true
- traefik.http.middlewares.ondemand-nginx.plugin.sablier.name=DOCKER_SWARM_nginx
- traefik.http.middlewares.ondemand-nginx.plugin.sablier.serviceUrl=http://sablier:10000
- traefik.http.middlewares.ondemand-nginx.plugin.sablier.timeout=5m
- traefik.http.middlewares.ondemand-whoami.plugin.sablier.name=DOCKER_SWARM_whoami
- traefik.http.middlewares.ondemand-whoami.plugin.sablier.serviceUrl=http://sablier:10000
- traefik.http.middlewares.ondemand-whoami.plugin.sablier.timeout=1m
- traefik.http.services.ondemand.loadbalancer.server.port=10000
nginx:
image: nginx
deploy:
replicas: 0
labels:
- traefik.enable=true
# If you do not use the swarm load balancer, traefik will evict the service from its pool
# as soon as the service is 0/0. If you do not set that, fallback to dynamic-config.yml file usage.
- traefik.docker.lbswarm=true
- traefik.http.routers.nginx.middlewares=ondemand-nginx@docker
- traefik.http.routers.nginx.rule=PathPrefix(`/nginx`)
- traefik.http.services.nginx.loadbalancer.server.port=80
whoami:
image: containous/whoami
deploy:
replicas: 0
labels:
- traefik.enable=true
- traefik.docker.lbswarm=true
- traefik.http.routers.whoami.middlewares=ondemand-whoami@docker
- traefik.http.routers.whoami.rule=PathPrefix(`/whoami`)
- traefik.http.services.whoami.loadbalancer.server.port=80