Команде Docker build не удается разрешить домены - PullRequest
0 голосов
/ 29 сентября 2019

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

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

Я хочу добавить новый контейнер.Тем не менее, я не могу собрать его, потому что он не работает, когда дело доходит до запуска обновления apt-get.Я проверил содержимое /etc/resolv.conf контейнера, и содержимое кажется правильным (nameserver 1.1.1.1 и nameserver 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 ... Я также переустановилДокер.Кажется, ничего не работает.

Наверное, это как-то связано с моими контейнерами DNS.

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

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

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

Заранее благодарю,

1 Ответ

0 голосов
/ 30 сентября 2019

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

RUN chmod o + r /etc/resolv.conf && apt-get [....]

Это работает, когда я меняю права доступа.

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

...