Я попытался создать файл Dockerfile и воспроизвел проблему. Похоже, вам не хватает конфигурации dns. Ниже я пытаюсь создать Dockerfile с базовым содержимым (хвост CMD) и пометить его как надежный.
anovil@ubuntu-anovil:~/tmp/serverfault$ cat Dockerfile FROM ubuntu:trustyRUN apt-get update \ && apt-get install -y curlCMD tail -f /dev/nullanovil@ubuntu-anovil:~/tmp/serverfault$ docker build -t trusty .Sending build context to Docker daemon 2.048 kBStep 1 : FROM ubuntu:14.0414.04: Pulling from library/ubuntuDigest: sha256:d3b59c1d15c3cfb58d9f2eaab8a232f21fc670c67c11f582bc48fb32df17f3b3Status: Downloaded newer image for ubuntu:14.04 ---> 89d5d8e8bafbStep 2 : RUN apt-get update && apt-get install -y curl ---> Using cache ---> 23e51481a6b8Successfully built 23e51481a6b8
Вместо того, чтобы просто запускать его, передайте dns по вашему выбору или глобальный dns следующим образом:
anovil@ubuntu-anovil:~/tmp/serverfault$ docker run -d --dns=8.8.8.8 trusty 5fe788260e6e43157fc06d991f994a6fd029624fb71dc6662024f2c118ac7577anovil@ubuntu-anovil:~/tmp/serverfault$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES5fe788260e6e trusty "/bin/sh -c 'tail -f " 3 seconds ago Up 2 seconds gloomy_dijkstraanovil@ubuntu-anovil:~/tmp/serverfault$
В качестве альтернативы вы можете проверить, какой сервер имен использует ваш контейнер docker следующим образом:
anovil@ubuntu-anovil:~/tmp/serverfault$ docker run -it trusty cat /etc/resolv.conf search xyz.comnameserver A.B.C.Danovil@ubuntu-anovil:~/tmp/serverfault$ docker run -it --dns=8.8.8.8 trusty cat /etc/resolv.conf search xyz.comnameserver 8.8.8.8anovil@ubuntu-anovil:~/tmp/serverfault$
Вы могли ясно видеть разницу в файле resolve.conf внутри контейнера.
Дайте нам знать, как все прошло.