我对docker并不陌生,我最近一直在PluralSight上学习Nigel Poulton的课程。现在,我开始按照群体模式观看视频教程,并在视频中进行了准确说明。
我有6个EC2实例正在运行。我登录到每个服务器并安装了一个泊坞窗。每台计算机上的引擎版本均为18.09.9
。现在,我使用以下命令从机器1初始化了群模式:
sudo docker swarm init --advertise-addr 172.31.41.99:2377 --listen-addr 172.31.41.99:2377
然后我获得了用于工作人员和管理人员的令牌,并登录到其他计算机,最后创建了3个管理人员和3个工作人员。
这是我节点的最终外观:
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
sbh3v850ko7h8f279366fxlt9 * ip-172-31-41-99 Ready active Leader 18.09.9
f7kqsy3yano3vxo8451mi9z7o ip-172-31-83-172 Ready active Reachable 18.09.9
jb0innx7l4q56kq4dk9phginw ip-172-31-90-8 Ready active 18.09.9
xr3oz2x1wyl3a0bd83i3atjk4 ip-172-31-91-47 Ready active 18.09.9
ttug67rbhfai88wq2sbulo8dm ip-172-31-94-197 Ready active Reachable 18.09.9
kkun5zo93zxg4jksryvbeh3mt ip-172-31-94-220 Ready active 18.09.9
然后我使用以下命令创建了服务:
sudo docker service create --name psight1 -p 8080:8080 --replicas 5 nigelpoulton/pluralsight-docker-ci
现在,当我拿起机器1的公共DNS并输入http://ec2-3-89-157-63.compute-1.amazonaws.com:8080
时,我收到一条错误消息,指出无法访问该站点。
但是,如果要使用以下命令,请不要使用docker服务:
docker run -d --name web -p 8080:8080 nigelpoulton/pluralsight-docker-ci
然后,当我进入http://ec2-3-89-157-63.compute-1.amazonaws.com:8080
时,它运行完美。
我看到有一个open issue ongoing in github与此类似。是因为docker 18.09.9中的同一问题还是我错过了什么?