Решено внизу
Но почему я должен добавить: 4000?
Я следую Руководству по началу работы с докером, https://docs.docker.com/get-started/part4/
Я вполне уверен, что все сделал правильно, но мне интересно, почему я не могу подключиться, чтобы просмотреть приложение после его развертывания.
Я установил свой env для моей виртуальной машины myvm1 для ссылки на следующие команды.
Док-контейнер ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
099e16249604 beresj/getting-started:part2 "python app.py" 12 seconds ago Up 12 seconds 80/tcp getstartedlab_web.5.y0e2k1r1ev47u24e5iufkyn3i
6f9a24b343a7 beresj/getting-started:part2 "python app.py" 12 seconds ago Up 12 seconds 80/tcp getstartedlab_web.3.1pls3osj3uhsb5dyqtt4ts8j6
изображение докера ls -a
REPOSITORY TAG IMAGE ID CREATED SIZE
beresj/getting-started <none> e290b6208c21 22 hours ago 131MB
стек док-станции ls
NAME SERVICES ORCHESTRATOR
getstartedlab 1 Swarm
докер-автомат ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
myvm1 * virtualbox Running tcp://192.168.99.100:2376 v18.09.6
myvm2 - virtualbox Running tcp://192.168.99.101:2376 v18.09.6
стек докера ps getstartedlab
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
vkxx79fh3h85 getstartedlab_web.1 beresj/getting-started:part2 myvm2 Running Running 3 minutes ago
qexbaa3wz0pd getstartedlab_web.2 beresj/getting-started:part2 myvm2 Running Running 3 minutes ago
1pls3osj3uhs getstartedlab_web.3 beresj/getting-started:part2 myvm1 Running Running 3 minutes ago
ucuwen1jrncf getstartedlab_web.4 beresj/getting-started:part2 myvm2 Running Running 3 minutes ago
y0e2k1r1ev47 getstartedlab_web.5 beresj/getting-started:part2 myvm1 Running Running 3 minutes ago
curl 192.168.99.100
curl: (7) Failed to connect to 192.168.99.100 port 80: Connection refused
информация о докере
Containers: 2
Running: 2
Paused: 0
Stopped: 0
Images: 1
Server Version: 18.09.6
...
Swarm: active
NodeID: 0p9qrax9h3by0fupat8ufkfbq
Is Manager: true
ClusterID: 7vnqdk85n8jx6fqck9k7dv2ka
Managers: 1
Nodes: 2
Default Address Pool: 10.0.0.0/8
...
Node Address: 192.168.99.100
Manager Addresses:
192.168.99.100:2377
...
Kernel Version: 4.14.116-boot2docker
Operating System: Boot2Docker 18.09.6 (TCL 8.2.1)
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 989.4MiB
Name: myvm1
Я бы ожидал увидеть то, что смог увидеть, когда просто запустил его на своей локальной машине, а не на виртуальной машине в рое (думаю, у меня правильный лингво?)
Не уверен, как проверить открытые порты.
Опять же: это работает, если я просто удаляю стек, сбрасываю среду докер-машины и просто запускаю:
стек докера развертывание -c docker-compose.yml getstartedlab
не на вм.
Заранее спасибо. (Кроме того, я новичок , поэтому руководство по началу работы , поэтому я ценю любую помощь)
Редактировать
Это работает, если я добавляю: 4000 к IP виртуальной машины в моем URL, например: 192.168.99.100:4000 или 192.168.99.101:4000. Он показывает два идентификатора контейнера, перечисленных в «docker container ls» для myvm1, а остальные три - из myvm2. Может кто-нибудь сказать мне, почему я должен добавить 4000? Это потому, что у меня есть порты: «4000: 80» в моем docker-compose.yml?