Приложение, работающее в контейнере, не может подключиться к базе данных на виртуальном хосте VM - PullRequest
1 голос
/ 01 февраля 2020

У меня есть простое веб-приложение, работающее на контейнере docker, которое устанавливает соединение БД с couchbase.

Моя коуч-база в настоящее время работает на локальном хосте виртуальной машины. (не другой контейнер).

Я попытался выполнить команду

docker run --net=host -p 8081:8081 {**image-name-one**}  // This connects without issue

Теперь мне нужен еще один экземпляр того же приложения, но с другим портом, и для этого я создал мостовую сеть с помощью ip - Затем 192.168.0.1 изменил строку подключения для использования сетевого ip

docker network create -d bridge --subnet 192.168.0.0/24 --gateway 192.168.0.1 test

Теперь я попытался запустить второй контейнер с указанными ниже портами

docker run --net=test -p 8083:8081 {**2nd-image-name**}  // This will never connect to the database

Любое понимание было бы очень полезным.

1 Ответ

1 голос
/ 04 февраля 2020

Я использую Ubuntu 16.04.

Я нашел способ обойти, добавив su bnet в брандмауэр, чтобы разрешить подключения к любым портам.

Теперь я могу подключить свои службы к Couchbase.

...