【发布时间】:2020-01-01 18:55:14
【问题描述】:
我想使用 Traefik 作为后端的负载平衡器,它正在侦听端口 2500。应该有两个后端容器处理端口80 上的请求。 Traefik 仪表板应该在端口8080 上可用。我还希望后端容器在崩溃时自动重启。
当我使用docker-compose --compatibility up --build 运行下面的docker-compose 文件时,我可以访问本地主机2500 和2501 上的两个后端。但是,后端应该只能通过端口80 上的 Traefik 使用。不幸的是,我无法访问端口80 上的后端。感谢您的帮助。
version: "3.4"
services:
backend:
deploy:
replicas: 2
build: .
ports:
- "2500-2501:2500"
restart: always
healthcheck:
test: curl http://127.0.0.1:2500 -s -f -o /dev/null || exit 1
interval: 10s
timeout: 10s
retries: 3
reverse-proxy:
image: traefik
command:
- --api.insecure=true
- --providers.docker=true
- --entrypoints.web.address=:80
ports:
- 80:80
- 8080:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock
【问题讨论】:
标签: docker docker-compose load-balancing reverse-proxy traefik