Docker群叠加networking通信
我正在尝试设置一个Docker Swarm,其中容器使用Overlay Network进行通信,但是我可以使其工作
我使用HypriotOS 1.0.0 Linux发行版模拟了使用4个Raspberry Pi 3主板的基础架构,其中包括Docker Engine 1.12.1
Swarm初始化后,进入pipe理器节点
# create one overlay network $ docker network create --driver overlay swarm_network # create first service (foo) $ docker service create --replicas 1 --name foo --network swarm_network resin/rpi-raspbian tail -F -n0 /etc/hosts # create second service (bar) $ docker service create --replicas 1 --name bar --network swarm_network resin/rpi-raspbian tail -F -n0 /etc/hosts # list services $ docker service ls ID NAME REPLICAS IMAGE COMMAND aqhcndcdoaf4 bar 1/1 resin/rpi-raspbian tail -F -n0 /etc/hosts cylg7ws3egx7 foo 1/1 resin/rpi-raspbian tail -F -n0 /etc/hosts # find docker host running foo service $ docker service ps foo ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR ed6z74ncz1zf0dqc7wph5huvk foo.1 resin/rpi-raspbian swarm-2 Running Running about an hour ago
ssh进入swarm-2节点
$docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 78b0e421efcd resin/rpi-raspbian:latest "/usr/bin/entry.sh ta" 48 seconds ago Up 45 seconds foo.1.ed6z74ncz1zf0dqc7wph5huvk # exec into the running container $ docker exec -it foo.1.ed6z74ncz1zf0dqc7wph5huvk /bin/bash # try dns resolution (OK) root@78b0e421efcd:/# nslookup bar Server: 127.0.0.11 Address: 127.0.0.11#53 Non-authoritative answer: Name: bar Address: 10.0.1.4 # ping bar service (FAIL) root@314b0ef6c82c:/# ping -c 1 bar PING bar (10.0.1.4) 56(84) bytes of data. From 314b0ef6c82c (10.0.1.3) icmp_seq=1 Destination Host Unreachable --- bar ping statistics --- 1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
我无法ping我的服务我做错了什么?
我已经开始这个问题,因为我试图在docker群上运行NSQ,我认为我的问题与覆盖networking有关!
这是最初的问题NSQ Docker Swarm
尝试像这样重新创buildnetworking: docker network create -d overlay --attachable ${NAme}