Итак, я пытаюсь использовать Traefik для балансировки нагрузки моих веб-приложений через Docker Swarm.
Однако я уже перепробовал множество конфигураций, но как-то не работает. Я уже прочитал документацию и прочитал несколько статей в интернете. К сожалению, многие статьи ссылаются на traefik 1.x вместо traefik 2.0.
Вот мой docker-stack.yml для traefik
version: '3.7'
services:
traefik:
image: traefik:2.0
deploy:
mode: global
placement:
constraints:
- node.role == manager
restart_policy:
condition: on-failure
labels:
- traefik.docker.network=load_balancer
configs:
- source: traefik
target: /etc/traefik/traefik.yml
ports:
- 80:80
volumes:
- /var/run/docker.sock:/var/run/docker.sock
networks:
- load_balancer
configs:
traefik:
file: ./traefik.yml
networks:
load_balancer:
external: true
name: load_balancer
whoami.yml (для тестирования)
version: '3.7'
services:
whoami:
image: containous/whoami
deploy:
labels:
- traefik.enable=true
- traefik.docker.network=load_balancer
- traefik.http.routers.whoami.rule=Host(`whoami.docker.localhost`)
networks:
- load_balancer
networks:
load_balancer:
external: true
name: load_balancer
Мой traefik.yml
log:
level: DEBUG
api:
insecure: true
providers:
docker:
exposedByDefault: false
swarmMode: true
watch: true
Докерская сеть ls
hxjw9rytw3od load_balancer overlay swarm
curl -H Хост: whoami.docker.localhost http://127.0.0.1
404 page not found