如何在Ubuntu上设置本地单节点Docker Swarm

我在一台Ubuntu机器上,我试图build立一个本地环境来testing我的docker堆栈,我创build了一个Swarm,使用docker swarm init --advertise-adr <IP> docker swarm init ,还有一些docker swarm init --advertise-adr <IP>在运行ifconfig发现了。

群体已初始化,一切都很正常,但是当我部署一个堆栈时,我不能使用浏览器访问我的服务,它只是永远加载。

我已经在AWS环境中尝试了相同的堆栈,并且工作正常,所以我假定与我当前的本地环境有关。

另外,如果我运行与docker-compose up相同的堆栈它的作品。

iptables -S输出:

 -P INPUT ACCEPT -P FORWARD DROP -P OUTPUT ACCEPT -N DOCKER -N DOCKER-INGRESS -N DOCKER-ISOLATION -N DOCKER-USER -A FORWARD -j DOCKER-USER -A FORWARD -j DOCKER-INGRESS -A FORWARD -j DOCKER-ISOLATION -A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A FORWARD -o docker0 -j DOCKER -A FORWARD -i docker0 ! -o docker0 -j ACCEPT -A FORWARD -i docker0 -o docker0 -j ACCEPT -A FORWARD -o br-7c734e310943 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A FORWARD -o br-7c734e310943 -j DOCKER -A FORWARD -i br-7c734e310943 ! -o br-7c734e310943 -j ACCEPT -A FORWARD -i br-7c734e310943 -o br-7c734e310943 -j ACCEPT -A FORWARD -o docker_gwbridge -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A FORWARD -o docker_gwbridge -j DOCKER -A FORWARD -i docker_gwbridge ! -o docker_gwbridge -j ACCEPT -A FORWARD -i docker_gwbridge -o docker_gwbridge -j DROP -A DOCKER-INGRESS -p tcp -m tcp --dport 8080 -j ACCEPT -A DOCKER-INGRESS -p tcp -m state --state RELATED,ESTABLISHED -m tcp - -sport 8080 -j ACCEPT -A DOCKER-INGRESS -j RETURN -A DOCKER-ISOLATION -i br-7c734e310943 -o docker0 -j DROP -A DOCKER-ISOLATION -i docker0 -o br-7c734e310943 -j DROP -A DOCKER-ISOLATION -i docker_gwbridge -o docker0 -j DROP -A DOCKER-ISOLATION -i docker0 -o docker_gwbridge -j DROP -A DOCKER-ISOLATION -i docker_gwbridge -o br-7c734e310943 -j DROP -A DOCKER-ISOLATION -i br-7c734e310943 -o docker_gwbridge -j DROP -A DOCKER-ISOLATION -j RETURN -A DOCKER-USER -j RETURN