Невозможно загрузить образ Docker из репозитория

Я пытаюсь создать рой на своем ноутбуке. Я запускаю демон Swarm на ноутбуке и запускаю две виртуальные машины Ubuntu 14.04 в качестве узла докеров. На одном из узлов я могу запустить swarm и подключиться к демону swarm. Я могу перечислить узел с информацией о докере и создать на нем контейнер. Но когда я пытаюсь получить образ роя на другом узле виртуальной машины, я получаю следующую ошибку:

pensu@pensu-virtual-machine:~$ sudo docker pull swarm
Pulling repository swarm
FATA[0025] Get https://index.docker.io/v1/repositories/library/swarm/images: dial tcp: lookup index.docker.io on 127.0.1.1:53: read udp 127.0.1.1:53: i/o timeout 

Я проверил, и кто-то сказал, что это проблема с прокси. Но я не использую прокси-сервер. Вот другая важная информация:

pensu@pensu-virtual-machine:~$ sudo docker version
Client version: 1.5.0
Client API version: 1.17
Go version (client): go1.4.1
Git commit (client): a8a31ef
OS/Arch (client): linux/amd64
Server version: 1.5.0
Server API version: 1.17
Go version (server): go1.4.1
Git commit (server): a8a31ef

Вот мой / etc / default / docker:

pensu@pensu-virtual-machine:~$ cat /etc/default/docker 
# Docker Upstart and SysVinit configuration file

# Customize location of Docker binary (especially for development testing).
#DOCKER="/usr/local/bin/docker"

# Use DOCKER_OPTS to modify the daemon startup options.
#DOCKER_OPTS="--dns 8.8.8.8 --dns 8.8.4.4"

# If you need Docker to use an HTTP proxy, it can also be specified here.
#export http_proxy="http://127.0.0.1:3128/"

# This is also a handy place to tweak where Docker's temporary files go.
#export TMPDIR="/mnt/bigdrive/docker-tmp"

Есть идеи, что я делаю не так?

Обновление: это что-то другое. Я пробовал все это из дома. Сегодня утром я пришел в офис, зашел в систему и вуаля, я смог вытащить изображение!

Не знаю, в чем причина, но похоже, что мне нужно будет прийти в офис, чтобы получить образы докеров!


person Pensu    schedule 05.03.2015    source источник
comment
Я использую boot2docker и могу решить проблему тайм-аута, просто перезапустив boot2docker, как описано здесь forum.docker.com/t/pulling-docker-images-io-timeout/740/4   -  person Sergiy Sokolenko    schedule 12.03.2015
comment
Я тоже сталкиваюсь с этой проблемой, любое решение, кто-нибудь?   -  person user859375    schedule 20.03.2015


Ответы (6)


Просто остановите и перезапустите свой докер-хост:

boot2docker stop
boot2docker start

Кредиты для: https://forums.docker.com/t/pulling-docker-images-io-timeout/740/6

person jlucasps    schedule 30.04.2015

Обновлено на современность:

docker-machine stop default
docker-machine start default

(docker-machine restart default не исправляет).

person Synesso    schedule 21.12.2015
comment
перезапуск исправляет это для меня в середине 2016 года - person Nathan Feger; 28.04.2016

Это сообщение об ошибке:

  • поиск index.docker.io на 127.0.1.1:53: чтение udp 127.0.1.1:53: тайм-аут ввода-вывода

сообщает, что соединение с локальным DNS-сервером (127.0.1.1:53) заканчивается по таймауту.

Я предполагаю, что эта проблема связана с настройкой сети / DNS на виртуальной машине.

person Marek Wywiał    schedule 14.04.2015

У меня была такая же проблема, мое решение - выполнить следующие команды.

boot2docker stop 
boot2docker delete
boot2docker init
boot2docker up

Это в основном удаляет использование образа vm в boot2docker и запускает заново. Это не приведет к удалению ваших локальных образов. Затем выполните команду docker pull.

person syodage    schedule 20.07.2015

Я перепробовал все заявленные решения, но они не помогли. Что решило проблему для меня, так это совет, опубликованный здесь,

docker-machine sssh
echo "nameserver 8.8.8.8" > /etc/resolv.conf
exit
person Stereo    schedule 30.03.2016
comment
При запуске docker-machine записывает разрешенный сервер имен маршрутизатора в /etc/resolv.conf. Если вы затем переключаете сети (например, между домом и офисом) без перезапуска докер-машины, он использует разрешенный сервер имен из сети, на которой был запущен DM. Это решение быстрее, чем запуск / остановка. Следующий шаг - перенастройка моих домашних сетей для использования общедоступных серверов имен. команда выше должна читать docker-machine ssh - person Mike Holdsworth; 08.06.2016

Когда это случилось со мной, оказалось, что образ уже был загружен ранее, но это был дефект из-за проблемы во время предыдущей загрузки.

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

Итак, чтобы исправить это:

docker image ls

Обратите внимание на идентификатор проблемного изображения, затем

docker image rm <id>

Затем повторно загрузите

docker pull <image-name>
person not2savvy    schedule 08.05.2020