Как узнать IP хоста, запустив docker-compose - PullRequest
0 голосов
/ 02 мая 2019

У меня есть docker-compose файл. Через мой docker-compose я запускаю несколько сервисов. Для каждого сервиса я запускаю разные контейнеры. Среди этих контейнеров у меня есть один контейнер, который отвечает за получение информации об оборудовании и сети хост-машины. Когда я запускаю контейнер в автономном режиме, он может предоставить мне IP-адрес хоста. Но, к сожалению, когда я запускаю его вместе с другими контейнерами (наиболее точно через файл docker-compose), я не могу получить информацию о сети хоста, а не всегда получаю информацию о сети моста (т.е. , docker-compose информация о внутренней сети). Я попытался установить network_mode:host в своем сервисе, но, к сожалению, когда я его установил, он перестает общаться с другими контейнерами. Может ли кто-нибудь предложить мне способ получения информации о хост-сети без вмешательства во внутреннюю связь между различными сервисными контейнерами.

Ответы [ 2 ]

0 голосов
/ 02 мая 2019

Без dockerfile и docker-compose его сложно протестировать, но я думаю, что если у вас есть контейнер с network_mode: host, вы должны обращаться к другому контейнеру только через хост, что означает переадресацию портов, поэтому, если у вас естьКонтейнер в режиме хоста, и еще один привязанный к localhost 8080, я думаю, вы должны пинговать localhost: 8080 из контейнера режима хоста.

Дайте мне отзыв об этом, пожалуйста!

Веселитесь!

0 голосов
/ 02 мая 2019

Возможно, вы могли бы иметь этот контейнер в двух сетях. Один с информацией о хосте, а другой - для «внутренней» связи с контейнерами.

Например: https://success.docker.com/article/multiple-docker-networks

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