Ответ 1
Попробуйте это временное решение:
osx$ boot2docker up
osx$ boot2docker ssh
[email protected]$ sudo echo "nameserver 8.8.8.8" > /etc/resolv.conf
[email protected]$ sudo /etc/init.d/docker restart
Он работает до перезагрузки.
Я запускаю Docker через CoreOS и Vagrant на OS X 10.10.
Когда я запускаю docker pull ubuntu
в CoreOS, я получил следующие ошибки:
$ docker pull ubuntu
Pulling repository ubuntu
cc0067db4f11: Error pulling image (precise) from ubuntu, endpoint: https://cdn-registry-1.docker.io/v1/, Get https://cdn-registry-1.docker.io/v1/images/cc0067db4f11198ef6fd0435f96a973e559b1cebfceb2bc8e4fe527b32045c2f/ancestry: dial tcp: lookup cdn-registry-1.dcc0067db4f11: Error pulling image (precise) from ubuntu, Get https://cdn-registry-1.docker.io/v1/images/cc0067db4f11198ef6fd0435f96a973e559b1cebfceb2bc8e4fe527b32045c2f/ancestry: dial tcp: lookup cdn-registry-1.docker.io on [10.0.2.3]:53: too many redirects
6006e6343fad: Error pulling image (quantal) from ubuntu, endpoint: https://cdn-registry-1.docker.io/v1/, Get https://cdn-registry-1.docker.io/v1/images/6006e6343fadaaeb5dd98436a3cd17eac8c03cabca1ed4c8778d039e72ebcc9c/ancestry: dial tcp: lookup cdn-registry-1.d6006e6343fad: Error pulling image (quantal) from ubuntu, Get https://cdn-registry-1.docker.io/v1/images/6006e6343fadaaeb5dd98436a3cd17eac8c03cabca1ed4c8778d039e72ebcc9c/ancestry: dial tcp: lookup cdn-registry-1.docker.io on [10.0.2.3]:53: too many redirects
7656cbf56a8c: Error pulling image (13.04) from ubuntu, endpoint: https://cdn-registry-1.docker.io/v1/, Get https://cdn-registry-1.docker.io/v1/images/7656cbf56a8c831de71ef43809b04fcf8125e7b039250835b6c5f6f280daf12e/ancestry: dial tcp: lookup cdn-registry-1.doc7656cbf56a8c: Error pulling image (13.04) from ubuntu, Get https://cdn-registry-1.docker.io/v1/images/7656cbf56a8c831de71ef43809b04fcf8125e7b039250835b6c5f6f280daf12e/ancestry: dial tcp: lookup cdn-registry-1.docker.io on [10.0.2.3]:53: too many redirects
3db9c44f4520: Error pulling image (lucid) from ubuntu, endpoint: https://cdn-registry-1.docker.io/v1/, Get https://cdn-registry-1.docker.io/v1/images/3db9c44f45209632d6050b35958829c3a2aa256d81b9a7be45b362ff85c54710/ancestry: dial tcp: lookup cdn-registry-1.doc3db9c44f4520: Error pulling image (lucid) from ubuntu, Get https://cdn-registry-1.docker.io/v1/images/3db9c44f45209632d6050b35958829c3a2aa256d81b9a7be45b362ff85c54710/ancestry: dial tcp: lookup cdn-registry-1.docker.io on [10.0.2.3]:53: too many redirects
5cf8fd909c6c: Error pulling image (trusty) from ubuntu, endpoint: https://cdn-registry-1.docker.io/v1/, Get https://cdn-registry-1.docker.io/v1/images/5cf8fd909c6ccc61199df6dbeb165767b83c23842ef49ca3ef3b81ece1bdce4f/ancestry: dial tcp: lookup cdn-registry-1.do5cf8fd909c6c: Error pulling image (trusty) from ubuntu, Get https://cdn-registry-1.docker.io/v1/images/5cf8fd909c6ccc61199df6dbeb165767b83c23842ef49ca3ef3b81ece1bdce4f/ancestry: dial tcp: lookup cdn-registry-1.docker.io on [10.0.2.3]:53: too many redirects
d2099a5ba6c5: Error pulling image (saucy) from ubuntu, endpoint: https://cdn-registry-1.docker.io/v1/, Get https://cdn-registry-1.docker.io/v1/images/d2099a5ba6c5a0f94f84162d69b4cb79b47c7ea1768550c6cee55a7ba2dc3647/ancestry: dial tcp: lookup cdn-registry-1.docd2099a5ba6c5: Error pulling image (saucy) from ubuntu, Get https://cdn-registry-1.docker.io/v1/images/d2099a5ba6c5a0f94f84162d69b4cb79b47c7ea1768550c6cee55a7ba2dc3647/ancestry: dial tcp: lookup cdn-registry-1.docker.io on [10.0.2.3]:53: too many redirects
2014/06/05 12:17:11 Could not find repository on any of the indexed registries.
Я был бы очень признателен, если бы кто-нибудь мог дать мне полезный совет по устранению этой проблемы.
Попробуйте это временное решение:
osx$ boot2docker up
osx$ boot2docker ssh
[email protected]$ sudo echo "nameserver 8.8.8.8" > /etc/resolv.conf
[email protected]$ sudo /etc/init.d/docker restart
Он работает до перезагрузки.
Я не знаю об ОС X, но в Linux это может произойти из-за "плохого" /etc/resolv.conf на хосте. Например, ubuntu добавляет что-то вроде:
nameserver 127.0.1.1
а затем обрабатывает DNS-запросы через некоторую службу. Проблема в том, что это доступно изнутри изображения.
Чтобы исправить это, мне пришлось добавить некоторые внешние серверы имен, например:
nameserver 127.0.1.1
nameserver 8.8.8.8
nameserver 8.8.4.4
У меня была аналогичная проблема при попытке вытащить контейнер из репозитория докеров с помощью этой команды:
докеры тянут ubuntu
Обратите внимание, что я использовал coreos внутри виртуального бокса, и я использовал Nat в качестве моей сетевой конфигурации для доступа к Интернету. При переключении сетевых режимов с помощью виртуального бокса я не мог сделать ничего.
Я решил проблему, перезапустив docker с помощью systemctl, пропустив эту команду:
sudo systemctl restart docker
И тогда моя тяга работала нормально. Надеюсь, это решение вам помогло. И я получил это из проблемы группы google, адресованной одним из разработчиков CoreOS (Brandon Philips) по этой ссылке: https://groups.google.com/forum/#!topic/coreos-dev/vWqSbPgNYro
10.0.2.3
- виртуальный сервер dns, проверьте Точная настройка механизма NAT VirtualBox
В качестве другого предлагаемого использования можно использовать 8.8.8.8
, который является сервером google dns.
# /etc/resolve.conf
nameserver 8.8.8.8
И если вы работаете в интранете, а затем замените его на ваш обычный DNS-сервер, который вы можете добавить search
, как показано ниже
# /etc/resolve.conf
nameserver xxx.xxxx.xxx
search company.com
Это будет полезно для доступа к вашему частному репо
В MacOSX, если вы используете Docker Machine, вы можете попробовать:
docker-machine ls
docker-machine ssh YOUR_VM_NAME
а затем из VM: запустите процесс /usr/local/bin/docker и запустите его вручную вручную:
sudo /usr/local/bin/docker -d -D -g /var/lib/docker -H unix:// -H tcp://0.0.0.0:2376 --label provider=virtualbox --tlsverify --tlscacert=/var/lib/boot2docker/ca.pem --tlscert=/var/lib/boot2docker/server.pem --tlskey=/var/lib/boot2docker/server-key.pem -s aufs
Как ни странно, перезагрузитесь, как этот
sudo /etc/init.d/docker restart
не помогает.
В окнах мне удалось исправить это, выполнив следующие действия:
Теперь я могу загружать изображения докеров с концентратора.