Я новичок в докере, и в последнее время я следил за курсом Найджела Поултона от PluralSight. Теперь я начал следовать видеоуроку по режиму роя и сделал именно то, что было сказано в видео.
У меня запущено 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
теперь, когда я беру общедоступный DNS моей машины 1 и ввожу http://ec2-3-89-157-63.compute-1.amazonaws.com:8080
, я получаю сообщение об ошибке, говорящее о том, что сайт недоступен.
Однако вместо использования службы докеров, если бы я использовал команду:
docker run -d --name web -p 8080:8080 nigelpoulton/pluralsight-docker-ci
Затем, когда я перехожу к http://ec2-3-89-157-63.compute-1.amazonaws.com:8080
, он работает отлично.
Я вижу, что в github есть открытая проблема, что-то похожее на это. Это из-за той же проблемы в докере 18.09.9 или я что-то упустил?