Подключиться к порту Ubuntu из контейнера Docker - PullRequest
0 голосов
/ 10 октября 2019

У меня есть приложение, работающее через порт 8180 на моем локальном компьютере. Когда я пытаюсь wget http://192.168.1.12:8180/auth из контейнера докера, я получаю следующую ошибку

--2019-10-10 08:17:03--  http://192.168.1.12:8180/auth
Connecting to 192.168.1.12:8180... failed: Connection refused.

Я пытался следовать

❯ sudo ufw status                                                                                                                                        [14:17:44]
Status: active

To                         Action      From
--                         ------      ----
8180/tcp                   ALLOW       Anywhere                  
443/tcp                    ALLOW       Anywhere                  
80/tcp                     ALLOW       Anywhere                  
8180/tcp (v6)              ALLOW       Anywhere (v6)             
443/tcp (v6)               ALLOW       Anywhere (v6)             
80/tcp (v6)                ALLOW       Anywhere (v6)             

По-прежнему получаю ту же ошибку.

Как это исправить ??

1 Ответ

1 голос
/ 10 октября 2019

Вам нужен сетевой мост в Docker. При условии, что 192.168.1.12 действительно является IP-адресом вашего хоста, эта команда создаст сеть 'dockernet'

$ docker network create -d bridge --subnet 192.168.1.0/24 --gateway 192.168.1.12 dockernet

Используйте эту сеть при запуске контейнера:

$ docker run --net=dockernet [...]

Другой подход будетиспользовать сетевой драйвер 'host' для контейнера, если вы обнаружите, что отсутствие сетевой изоляции приемлемо для этой цели. См. Хост-сеть и учебник для получения дополнительной информации.

Как правило, Сетевая документация Docker рекомендуется и легко читается.

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