Как сделать конфигурацию маршрута для прокси traefik на Docker-Swarm
Изменить: я нахожу предупреждение в журналах. warning msg="Could not find network named 'proxy-nw' for container 'kubisCluster_rabbithaproxy.1'! Maybe you're missing the project's prefix in the label? Defaulting to first available network."
но все контейнеры в одной сети.
Я пытаюсь прокси мой трафик с traefik на Docker Swarm. У меня много услуг. я добавил traefik и службу whoami с конфигом для тестирования (traefik.frontend.rule: "Host:kubistest.kozid.local; PathPrefixStrip:/whoami"
). это работа успешно (https://kubistest.kozid.local/whoami
). И я хочу добавить новое правило для страницы мониторинга кролика. я добавил правило как правило whoami (traefik.frontend.rule: "Host:kubistest.kozid.local; PathPrefixStrip:/rabbit"
) но не работает. возвращение "Gateway Timeout" из "https://kubistest.kozid.local/rabbit
"оба правила одинаковы.
Я уверен: страница мониторинга Кролика работает. Там нет проблем, когда я контролирую из порта публикации (http://192.168.0.70:15672
). Но не работает на трафик прокси.
я начал стек с docker stack deploy --compose-file /ortak/docker-stack.yml kubisCluster
traefik.toml
logLevel = "DEBUG"
graceTimeOut = "5s"
debug = true
defaultEntryPoints = ["http", "https"]
[web]
address = ":8080"
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
entryPoint = "https"
[entryPoints.https]
address = ":443"
[entryPoints.https.tls]
[[entryPoints.https.tls.certificates]]
certFile = "/etc/self.crt"
keyFile = "/etc/self.key"
[retry]
[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "kubistest.kozid.local"
swarmmode = true
watch = true
exposedbydefault = false
докер-stack.yml
version: "3.3"
services:
####### REVERSE PROXY #######
traefik:
image: traefik:alpine
command: -c /etc/traefik.toml
ports:
- "8080:8080"
- "80:80"
- "443:443"
deploy:
placement:
constraints:
- node.role == manager
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./traefic/traefik-stack.toml:/etc/traefik.toml
- ./traefic/self.crt:/etc/self.crt
- ./traefic/self.key:/etc/self.key
networks:
- proxy-nw
whoami:
image: containous/whoami:latest
networks:
- proxy-nw
deploy:
labels:
traefik.frontend.rule: "Host:kubistest.kozid.local; PathPrefixStrip:/whoami"
traefik.port: "80"
traefik.enable: "true"
traefik.backend: "whoami"
traefik.docker.network: "proxy-nw"
rabbithaproxy:
image: haproxy:1.7
volumes:
- /ortak/rabbitMQCluster/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro
networks:
- mq-nw
- proxy-nw
depends_on:
- rabbitmq1
- rabbitmq2
- rabbitmq3
ports:
- 15672:15672
- 5672:5672
deploy:
labels:
traefik.frontend.rule: "Host:kubistest.kozid.local; PathPrefixStrip:/rabbit"
traefik.port: "15672"
traefik.enable: "true"
traefik.backend: "rabbithaproxy"
traefik.docker.network: "proxy-nw"