2017-01-03 2 views
1

Возможно ли, что контейнер-докер работает локально, чтобы не использовать хосты /etc/hosts файл для разрешения dns?Отключить файл hosts в контейнере докера

Например, на моем локальном /etc/hosts файл я мог установить 127.0.0.1 stackoverflow.com, но в моем Docker контейнере stackoverflow.com разрешил бы к фактической ф.

ответ

2

Вы обнаружите, что сетевая конфигурация внутри контейнера идентична хосту только при запуске контейнера с опцией --network=host.

Если вы запускаете контейнер без опции - -network, демон Docker соединяет контейнеры по умолчанию bridge. Контейнеры в этой сети по умолчанию могут связываться друг с другом с использованием IP-адресов.

Список Докер сети с

docker network ls 

и вы можете проверить их

docker network inspect bridge (последний параметр это имя сети)

Посмотрите на Docker container networking для более подробной информации.

+0

спасибо за советы. Я видел этот флаг сети в документах и ​​не использовал его, поэтому я немного смутился, но я использую компоновку докеров, чтобы это явно повлияло на это. Те команды, которые вы указали, выглядят многообещающими, спасибо снова. – gfunk

+0

По умолчанию Compose (версия 2) устанавливает единую сеть для вашего приложения. Каждый контейнер для службы присоединяется к сети по умолчанию и доступен для других контейнеров в этой сети и может быть обнаружен ими по имени узла, идентичному имени контейнера. Когда вы запускаете компоновку докеры, создается сеть с именем myapp_default. Запустите «docker network inspect mypp_default», чтобы проверить, какая это сеть докеров. Вы также можете изменить настройки сети по умолчанию для всего приложения, указав запись в сетях с именем по умолчанию. См. Https://docs.docker.com/compose/networking/ – gile

+0

Я запустил изображение с помощью 'docker run -it -network = bridge $ {container_id}/bin/bash' и все еще разрешал адреса через хост-хост файла. (Я знаю, что мне не нужно указывать мост как сеть, но просто хотел быть понятным, что он не использует сеть хоста). Я использую докер для mac btw в случае, если это имеет значение. Ожидается ли это? – gfunk

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