无法从域访问Traefik Docker Swarm Unifi安装程序
一段时间以来,我一直在尝试使用Traefik:v2.x设置Docker Swarm,并在Google上进行了广泛的搜索,但我仍然无法从我的外部域连接到我的反向代理 我的设置如下所示: 硬件(从外部到内部): 域和通配符域都指向我的系统,如果我运行的是一个暴露了端口80的容器,它将从域中工作。一旦我为Traefik设置了它,我就无法从外部访问我的容器,但是可以从网络内部使用curl命令访问我的测试容器。即使我卷曲USG 在服务器上,我安装了Docker+Docker Swarm并运行以下两个堆栈:无法从域访问Traefik Docker Swarm Unifi安装程序,docker,docker-swarm,traefik,Docker,Docker Swarm,Traefik,一段时间以来,我一直在尝试使用Traefik:v2.x设置Docker Swarm,并在Google上进行了广泛的搜索,但我仍然无法从我的外部域连接到我的反向代理 我的设置如下所示: 硬件(从外部到内部): 域和通配符域都指向我的系统,如果我运行的是一个暴露了端口80的容器,它将从域中工作。一旦我为Traefik设置了它,我就无法从外部访问我的容器,但是可以从网络内部使用curl命令访问我的测试容器。即使我卷曲USG 在服务器上,我安装了Docker+Docker Swarm并运行以下两个堆栈:
version: '3'
services:
reverse-proxy:
image: traefik:v2.3.4
command:
- "--providers.docker.endpoint=unix:///var/run/docker.sock"
- "--providers.docker.swarmMode=true"
- "--providers.docker.exposedbydefault=false"
- "--providers.docker.network=traefik-public"
- "--entrypoints.web.address=:80"
ports:
- 80:80
- 8080:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
- traefik-public
deploy:
placement:
constraints:
- node.role == manager
networks:
traefik-public:
external: true
及
我有一个小小的更新,可以访问一个在我的域中暴露了端口80的常规容器,但是一旦我用Docker Swarm旋转容器,它就不再暴露在互联网上 网络创建如下,我也将其用于常规容器:
docker network create -d overlay --attachable test
和yml:
version: '3'
services:
nginx:
image: nginx
ports:
- 80:80
networks:
- test-swarm-network
networks:
test:
external: true
因此,上述操作不起作用,但从外部可以在我的域中看到以下内容:
docker run -d -p 80:80 nginx
搬到库伯内特斯。Swarm已经被弃用了。谢谢你,但我想继续使用Swarm。这是你的选择,但是学习一项过时的技术是浪费你的时间,而且当它出问题时,你不可能找到任何帮助(比如你现在的问题)。像K3D这样的Kubernetes实现是随Traefik预先部署的,使用它非常简单,当它出错时会有很多帮助。它也更安全,比swarm收到了更多的最新更新,swarm在年底失去了对商业客户的支持,并且已经失去了对开源afaik的支持。
version: '3'
services:
nginx:
image: nginx
ports:
- 80:80
networks:
- test-swarm-network
networks:
test:
external: true
docker run -d -p 80:80 nginx