Отображение порта хоста не работает с docker-compose на EC2 - PullRequest
5 голосов
/ 01 мая 2019

Я попытался запустить это приложение hello world на экземпляре AWS EC2 с docker-compose up --build. Он работает должным образом и доступен удаленно с общедоступного IP-адреса EC2, когда я использую порт 80, то есть "80:80", как показано в файл docker-compose .

Однако, если я переключусь на другой порт, такой как "5106: 80", он не будет доступен с удаленного хоста с использованием <public IPv4 address>:5106, даже если он доступен локально, если я подключусь к экземпляру EC2 и попробую localhost:5106. Обратите внимание:

  1. Я убедился, что EC2 находится в общедоступной подсети, и я настроил группу безопасности, чтобы порт (в данном случае 5106) принимал входящий трафик с моего ноутбука.

  2. Я знаю, что это не проблема с приложением hello-world, потому что у меня точно такая же проблема с другим приложением, т.е. только порт 80 работает с сопоставлением портов docker-compose на EC2.

Ответы [ 2 ]

2 голосов
/ 11 мая 2019

Поскольку он работает с портом 80 и не работает с портом 5106, это может означать одну из двух возможностей:

  • Существует проблема с вашими группами безопасности.Вы должны проверить, что вы добавили порт 5106 в inbound rules вашей группы безопасности.
  • Существует проблема с брандмауэром или антивирусом, который не позволяет вам подключаться к веб-страницам в разных портах.чем 80 или 443.Вы можете попробовать, если это происходит с другим устройством или в другой сети.

В этом случае, похоже, последнее.

2 голосов
/ 10 мая 2019

Возможно, что сеть Docker необходимо удалить?

docker network rm $(docker network ls -q)

Затем снова запустите docker-compose.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...