2014-11-10 5 views
0

У меня возникли проблемы с подключением к MongoDB на хост-докер. Я не уверен, в чем проблема, но мой текущий контейнер докеров должен иметь возможность подключаться к экземпляру MongoDB без докеров.Проблемы с частной сетью с докере

У моего хоста 2 сетевых интерфейса, которые являются eth0 с исходящим IP и eth1 с частным lan ip 192.168.100.200. Есть ли способ подключения к хосту без выполнения --net = host?

+0

Какая ошибка у вас? Вы можете пинговать из контейнера по адресу? Любой брандмауэр (например, ufw) работает? – Bryan

+0

Вы уверены, что mongodb прослушает 192.168.100.200:27017? Запустить netstat -nap --tcp | grep LISTEN на хосте. Убедитесь, что он слушает. Экземпляр докеры должен иметь возможность ping 192.168.100.200 и подключиться к mongo на этом интерфейсе, если ваша сетевая настройка не завинчена. – user2105103

+0

Я не получаю сообщение об ошибке, я пытался остановить брандмауэр iptables, но это не имеет значения. Я попробовал очистить изображение centos, чтобы попытаться выполнить ping и подключиться к хосту mongodb. –

ответ

0

Вы можете войти в свой MongoDB используя nsenter или Docker EXEC, и выдавать некоторые команды, такие как

ip all 

использованием

nsenter 

из https://github.com/jpetazzo/nsenter или

docker exec 

если вы имеют последнюю версию докера

+0

Я не уверен, что вы имеете в виду этим. Экземпляр MongoDB устанавливается непосредственно на хост-сервер, и он должен оставаться там, потому что он используется другими проектами и программным обеспечением. Экземпляр MongoDB отлично работает для всего остального, за исключением того, что я не могу его достать изнутри контейнера –

+0

OK nevermind ... Оказывается, это брандмауэр в конце концов: S Извините! Спасибо за помощь! –

Смежные вопросы