Træfik theory
Compose

Docker layout
Manage multiple containers
One file
Better than use only commands
Træfik
Emile Vauge
Written in GO
Works fine with Docker
Easy to use
French Quality


traefik:
image: traefik:latest
command: --api.insecure=true --providers.docker
ports:
- 80:80
- 443:443
- 8080:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock
<<: *network webserver:
image: eu.gcr.io/quotatis-152617/nginx:develop
container_name: pro-api_webserver
working_dir: /srv/app
networks:
- default
depends_on:
- postgresql
volumes:
- .:/srv/app
- ./docker/nginx/local.conf:/etc/nginx/conf.d/default.conf
- ./var/ssl:/srv/app/var/ssl:ro
labels:
- traefik.http.routers.webserver-pro-api.rule=Host(`pro-api-dev.qarx.io`)
<<: *networkPro API sample
webserver:
#...
labels:
#...
- traefik.http.routers.webserver-pro-api.rule=Host(`pro-api-dev.qarx.io`)
- traefik.http.services.webserver-pro-api.loadbalancer.server.port=8080Pro API sample
[providers.docker]
endpoint = "unix:///var/run/docker.sock"
[api]
insecure = true
dashboard = true
debug = true
[entryPoints.web]
address = ":80"
[entryPoints.web.http]
[entryPoints.web.http.redirections]
[entryPoints.web.http.redirections.entryPoint]
to = "web-secure"
scheme = "https"
[entryPoints.web-secure]
address = ":443"
[accessLog]
filePath = "/var/log/traefik/access.log"
traefik:
image: traefik:latest
ports:
- 80:80
- 443:443
- 8080:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./traefik.toml:/traefik.toml
<<*networks webserver:
#...
labels:
#...
- traefik.http.routers.webserver-pro-api.entrypoints=web-secure
- traefik.http.routers.webserver-pro-api.tls=truePro API sample
What's next?
Replace all dns with port to only dns
Traefik theory
By darkweak
Traefik theory
- 614