Docker layout
Manage multiple containers
One file
Better than use only commands
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`)
<<: *network
Pro 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=8080
Pro 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=true
Pro API sample