Команде сборки Docker не удается разрешить домены

Я настроил сервер Debian 10 для размещения своих контейнеров, работающих на Docker версии 19.03.2.

В настоящее время он содержит 3 контейнера DNS (pi-hole => bind9 => dnscrypt-proxy), что означает, что мой сервер Debian 10 действует как DNS-сервер для моей локальной сети. docker ps -a

Я хочу добавить новый контейнер. Однако я не могу его собрать, потому что он не работает, когда дело доходит до RUN apt-get update. Я проверил содержимое /etc/resolv.conf контейнера, и оно кажется правильным (сервер имен 1.1.1.1 и сервер имен 9.9.9.9, что соответствует тому, что я написал в /etc/docker/daemon.json).

Если я прав, на этапе сборки по умолчанию используется DNS хоста, за исключением случаев, когда вы указываете DNS-серверы в / etc / default / docker или /etc/docker/daemon.json.

Если DNS-серверы в /etc/resolv.conf кажутся правильными, и если у контейнера есть доступ в Интернет (я пробовал выполнить команду RUN ping 8.8.8.8 -c1, и он работает), сборка должна завершиться успешно?

Я попробовал несколько вещей, например, перезапись содержимого /etc/resolv.conf другим DNS, я также перезагрузил сервер, перезапустил Docker, удалил загруженные образы, использовал параметр --no-cache ... Я также переустановил Docker. Кажется, ничего не работает.

Думаю, это должно быть как-то связано с моими DNS-контейнерами.

Ниже приведено содержимое /etc/resolv.conf хоста (первый - сам по себе, поскольку он перенаправляет на Pi-hole). cat /etc/resolv.com (хост)

Есть ли у вас какие-нибудь рекомендации по решению этой проблемы?

Я могу предоставить файл docker-compose моих контейнеров DNS и файл Dockerfile моего нового контейнера, если они вам понадобятся.

Заранее спасибо,


person Cybermate    schedule 29.09.2019    source источник


Ответы (1)


Я нашел это исправление:

ЗАПУСТИТЬ chmod o + r /etc/resolv.conf && apt-get [....]

Работает, когда меняю разрешения.

Я не очень понимаю, почему он так себя ведет, если у вас есть зацепки, я был бы рад узнать больше!

person Cybermate    schedule 29.09.2019