我尝试使用traefik作为我的docker-swarm托管服务器上的一个服务器的负载均衡器。
我基本上遵循这个教程:https://docs.traefik.io/user-guide/swarm-mode/
要将其分解:
1.我在Docker Swarm中初始化了docker swarm init
1.创建覆盖网络docker network create --driver overlay traefik-net
1.启动traefik服务
docker service create \
--name traefik \
--constraint=node.role==manager \
--publish 80:80 --publish 8080:8080 \
--mount type=bind,source=/var/run/docker.sock,target=/var/run/docker.sock \
--network traefik-net \
traefik \
--docker \
--docker.swarmmode \
--docker.domain=traefik \
--docker.watch \
--web
所以,我试图通过localhost:8080访问traefik Jmeter 板,但页面根本无法加载。
Docker正在监听这些端口:
sudo netstat -tulpen | grep dockerd
tcp6 2 0 :::8080 :::* LISTEN 0 56713 4102/dockerd
tcp6 1 0 :::80 :::* LISTEN 0 55724 4102/dockerd
因此,我希望在localhost:8080上运行,它会给我traefik Jmeter 板。
有人能指出我漏掉了什么吗?
2条答案
按热度按时间wqsoz72f1#
请问这两个命令的结果是什么:
curl 127.0.0.1:8080
和curl localhost:8080
?hfyxw5xn2#
默认情况下,Traefik Jmeter 板不会显示。必须首先通过配置激活它。参见:https://doc.traefik.io/traefik/operations/dashboard/#secure-mode
到目前为止,Docker Swarm中的Traefik在尝试通过服务标签管理路由时有点不稳定。当你试图调试你的东西,最后发现IP Traefik在Swarm中检索的服务是错误的时,这真的很伤脑筋。为提高稳定性,请为布线使用文件提供程序。