我正在以集群模式运行docker。
服务器A是我的经理 服务器B是我的工作人员
我在A上运行了很多容器,只是启动B来帮助处理一些工作量。
问题在于,如果将容器部署在A上,Traefik会将请求路由到它,但是如果容器最终在B上,它将给我错误的网关。
我的traefik
堆栈:
version: '3.6'
networks:
traefik-net:
driver: overlay
attachable: true
external: true
services:
reverse-proxy:
image: traefik # The official Traefik docker image
command: --docker --docker.swarmmode --docker.domain=mydomain.com --docker.watch --api # Enables the web UI and tells Traefik to listen to docker
ports:
- "80:80" # The HTTP port
- "8080:8080" # The Web UI (enabled by --api)
- "443:443"
networks:
- traefik-net
volumes:
- /var/run/docker.sock:/var/run/docker.sock # So that Traefik can listen
- /home/walucas/docker-configs/traefik/traefik.toml:/traefik.toml
- /home/walucas/docker-configs/traefik/acme.json:/acme.json
deploy:
labels:
traefik.port: 8080
traefik.frontend.rule: "Host:traefik.mydomain.com"
traefik.docker.network: traefik-net
replicas: 1
placement:
constraints: [node.role == manager]
我的whoami
堆栈:
version: '3.6'
services:
whoami:
image: jwilder/whoami
ports:
- "8089:8000"
networks:
- traefik-net
deploy:
replicas: 1
labels:
traefik.frontend.rule: "Host:whoami.mydomain.com"
traefik.port: "8000"
traefik.docker.network: traefik-net
networks:
traefik-net:
driver: overlay
attachable: true
external: true
我不确定这是网络问题还是traefik问题。
(注意)服务器B不在服务器A上的另一个物理位置上。