Не удалось установить CURL на образ Docker Ubuntu

Я пытаюсь установить curl на ubuntu 14.04 в Docker image и простой:

sudo apt-get updatesudo apt-get install curl

никогда не будет работать со следующим выводом. Похоже, что установка curl невозможна через apt-get на этом образе Docker. Я буду благодарен за любую помощь, поскольку я новичок в управлении Docker.

Ошибаться http://archive.ubuntu.com надежный InReleaseErr http://archive.ubuntu.com надежный-обновления в releaseerr http://archive.ubuntu.com надежный-безопасность в releaseerr http://archive.ubuntu.com надежный релиз.gpg Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com надежный выпуск обновлений.gpg Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com надежный-выпуск безопасности.gpg Не удалось разрешить 'archive.ubuntu.com - Читаю списки посылок... DoneW: Не удалось получить http://archive.ubuntu.com/ubuntu/dists/trusty/InRelease

W: Не удалось извлечь http://archive.ubuntu.com/ubuntu/dists/trusty-updates/InRelease

W: Не удалось извлечь http://archive.ubuntu.com/ubuntu/dists/trusty-security/InRelease

W: Не удалось извлечь http://archive.ubuntu.com/ubuntu/dists/trusty/Release.gpg Не удалось решить 'archive.ubuntu.com '

W: Не удалось извлечь http://archive.ubuntu.com/ubuntu/dists/trusty-updates/Release.gpg Не удалось решить 'archive.ubuntu.com '

W: Не удалось извлечь http://archive.ubuntu.com/ubuntu/dists/trusty-security/Release.gpg Не удалось решить 'archive.ubuntu.com '

W: Не удалось загрузить некоторые индексные файлы. Они были проигнорированы или вместо них использовались старые

Ошибаться http://archive.ubuntu.com/ubuntu/ надежный/основной libkeyutils1 amd64 1.5.6-1 Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com/ubuntu/ надежный/основной libidn11 amd64 1.28-1ubuntu2 Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com/ubuntu/ надежный/основной librtmp0 amd64 2.4+20121230.gitdf6c518-1 Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com/ubuntu/ надежный-безопасность/основной libkrb5support0 amd64 1.12+dfsg-2ubuntu5.2 Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com/ubuntu/ надежный-безопасность/основной libk5crypto3 amd64 1.12+dfsg-2ubuntu5.2 Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com/ubuntu/ надежный-безопасность/основной libkrb5-3 amd64 1.12+dfsg-2ubuntu5.2 Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com/ubuntu/ надежный-безопасность/основной libgssapi-krb5-2 amd64 1.12+dfsg-2ubuntu5.2 Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com/ubuntu/ не удалось разрешить trusty-security/main libcurl3 amd64 7.35.0-1ubuntu2.5 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com/ubuntu/ надежный-безопасность/основной ca-сертификаты все 20141019ubuntu0.14.04.1 Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com/ubuntu/ надежный-безопасность/основной krb5-локали все 1.12+dfsg-2ubuntu5.2 Не удалось разрешить 'archive.ubuntu.com "Ошибаешься http://archive.ubuntu.com/ubuntu/ надежный-безопасность/основной curl amd64 7.35.0-1ubuntu2.5 Не удалось разрешить 'archive.ubuntu.com 'E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/k/krb5/libkrb5support0_1.12 +dfsg-2ubuntu5.2_amd64.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/k/krb5/libk5crypto3_1.12 +dfsg-2ubuntu5.2_amd64.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/k/keyutils/libkeyutils1_1.5.6-1_amd64.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/k/krb5/libkrb5-3_1.12 +dfsg-2ubuntu5.2_amd64.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/k/krb5/libgssapi-krb5-2_1.12 +dfsg-2ubuntu5.2_amd64.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/libi/libidn/libidn11_1.28-1ubuntu2_amd64.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/r/rtmpdump/librtmp0_2.4 +20121230.gitdf6c518-1_amd64.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/c/curl/libcurl3_7.35.0-1ubuntu2.5_amd64.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/c/ca-certificates/ca-certificates_20141019ubuntu0.14.04.1_all.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/k/krb5/krb5-locales_1.12 +dfsg-2ubuntu5.2_all.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось получить http://archive.ubuntu.com/ubuntu/pool/main/c/curl/curl_7.35.0-1ubuntu2.5_amd64.deb Не удалось решить 'archive.ubuntu.com '

E: Не удалось извлечь некоторые архивы, может быть, запустить apt-get update или попробовать с помощью --fix-missing?

Я попытался создать файл 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 внутри контейнера.

Дайте нам знать, как все прошло.

Похоже, вы не можете получить доступ к этим ресурсам, потому что DNS не настроен. Проверьте, есть ли у вас к ним доступ (ping 8.8.8.8), а затем настройте DNS для docker (добавив сервер имен 8.8.8.8 в /etc/resolv.conf).

С уважением

Похоже, что ваши контейнеры не имеют доступа к Интернету.