Можно ли избежать переадресации портов при запуске Docker на VirtualBox на Ubuntu? - PullRequest
0 голосов
/ 28 апреля 2018

Я бы хотел, чтобы кто-нибудь получил доступ к моему серверу через [server-ip-address]: 80, но прежде чем я смогу это сделать, мне нужно обновить настройки переадресации портов в настройках сети VirtualBox. (Поскольку докер-машина использует VirtualBox в качестве гипервизора)

Есть ли способ обойти это? Потому что, когда я следую учебнику по докеру здесь:

часть учебника по докеру 2

В конце они просто используют localhost для подключения к ip док-машины. Как мне этого добиться?

1 Ответ

0 голосов
/ 28 апреля 2018

Невозможно связаться с докером, не используя переадресацию портов. Причина в том, что docker создает свою собственную сеть на основе docker0 (виртуальный адаптер) и мостового соединения. Этот подход docker ограничивает взаимодействие любого приложения за пределами этого контейнера, если вы не выставляете приложение на порт (или другой механизм).

Это функция безопасности docker, потому что теперь к приложению можно получить доступ, только явно указав порты.

Возвращаясь к исходному вопросу, попытка представить приложение Docker вне localhost без переадресации портов не является хорошей идеей. Хотя Docker позволяет создавать оверлейные сети для создания сети, охватывающей несколько компьютеров. Возможно, вас заинтересует что-то вроде kubernetes для демонстрации и масштабирования вашего приложения.

...