Skip to content

Instantly share code, notes, and snippets.

@muresan
Last active June 11, 2018 06:52
Show Gist options
  • Save muresan/f12aa7a19cdee7ce40a2f2bf7adf7162 to your computer and use it in GitHub Desktop.
Save muresan/f12aa7a19cdee7ce40a2f2bf7adf7162 to your computer and use it in GitHub Desktop.
version: '3.1'
services:
helloworld:
image: muresan/node-helloworld:${TAG:-1.0}
deploy:
labels:
traefik.port: "3000"
traefik.protocol: "http"
traefik.backend.loadbalancer.sticky: "true"
traefik.backend.loadbalancer.swarm: "false"
traefik.docker.network: "lb_ext_proxy"
traefik.backend: "hw_ext"
traefik.frontend.rule: "Host:hw-ext.test"
traefik.frontend.entryPoints: exthttp
mode: global
update_config:
parallelism: 1
delay: 2s
placement:
constraints:
- node.role == manager
networks:
- lb_ext_proxy
networks:
lb_ext_proxy:
external: true
version: '3.1'
services:
helloworld:
image: muresan/node-helloworld:${TAG:-1.0}
deploy:
labels:
traefik.port: "3000"
traefik.protocol: "http"
traefik.backend.loadbalancer.sticky: "true"
traefik.backend.loadbalancer.swarm: "false"
traefik.docker.network: "lb_int_proxy"
traefik.backend: "hw_int"
traefik.frontend.rule: "Host:hw-int.test"
traefik.frontend.entryPoints: inthttp
mode: global
update_config:
parallelism: 1
delay: 2s
placement:
constraints:
- node.role == manager
networks:
- lb_int_proxy
networks:
lb_int_proxy:
external: true
version: '3.3'
services:
sleep:
image: alpine
deploy:
mode: global
command: sleep 30d
networks:
- ext_proxy
- int_proxy
networks:
int_proxy:
driver: overlay
driver_opts:
encrypted: ""
ext_proxy:
driver: overlay
driver_opts:
encrypted: ""
version: '3.3'
services:
traefik_int:
image: traefik:1.3-alpine
deploy:
mode: global
placement:
constraints:
- node.role == manager
networks:
- lb_int_proxy
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
ports:
- "80:80"
- "443:443"
- "8888:8888"
command:
- --docker
- --docker.swarmmode
- --docker.domain=traefik
- --docker.watch
- --web
- --web.address=:8888
- --configFile=/etc/traefik_int_config.toml
configs:
- source: traefik_int_config.toml
target: /etc/traefik_int_config.toml
traefik_ext:
image: traefik:1.3-alpine
deploy:
mode: global
placement:
constraints:
- node.role == manager
networks:
- lb_ext_proxy
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
ports:
- "8080:8080"
- "8443:8443"
- "9999:9999"
command:
- --docker
- --docker.swarmmode
- --docker.domain=traefik
- --docker.watch
- --web
- --web.address=:9999
- --configFile=/etc/traefik_ext_config.toml
configs:
- source: traefik_ext_config.toml
target: /etc/traefik_ext_config.toml
configs:
traefik_int_config.toml:
file: ./traefik_int_config.toml
traefik_ext_config.toml:
file: ./traefik_ext_config.toml
networks:
lb_int_proxy:
external: true
lb_ext_proxy:
external: true
[entryPoints]
[entryPoints.exthttp]
address = ":8080"
[entryPoints.exthttps]
address = ":8443"
[entryPoints]
[entryPoints.inthttp]
address = ":80"
[entryPoints.inthttps]
address = ":443"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment