La red agotó el tiempo de espera al intentar conectarse a https://index.docker.io

204

Instalé Docker-Toolbox justo ahora mientras seguía su página web

Empecé con Docker QuickStart Terminaly veo a continuación

                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
             \    \         __/
              \____\_______/


docker is configured to use the default machine with IP 192.168.99.100
For help getting started, check out the docs at https://docs.docker.com

bash-3.2$ 

Pero cuando trato de actuar docker pull hello-world, esto es lo que veo

bash-3.2$ docker run hello-world
Unable to find image 'hello-world:latest' locally
Pulling repository docker.io/library/hello-world
Network timed out while trying to connect to https://index.docker.io/v1/repositories/library/hello-world/images. You may want to check your internet connection or if you are behind a proxy.
bash-3.2$ 

Que pasa

soñador
fuente

Respuestas:

482

Tuve el mismo problema esta mañana y lo siguiente me lo solucionó:

$ docker-machine restart default      # Restart the environment
$ eval $(docker-machine env default)  # Refresh your environment settings

Parece que esto se debe a que la máquina virtual Docker se encuentra en un estado extraño. Hay un problema abierto de github aquí

Mark Smith
fuente
3
Esto también me lo solucionó ... sin embargo, tengo que volver a ejecutarlo con cada nueva sesión de terminal.
THX1137
17
Parece suceder cuando cambio de mi LAN de trabajo a LAN de casa. Quizás el DNS sea inalcanzable desde casa.
taco
10
Puedo confirmar que se rompe cuando cambio las redes WiFi. Reiniciar Docker siempre lo arregla.
Stephen Harrison
3
Perfecto, en mi caso tuve que incluir docker-machine regenerate-certs default.
rogeriopradoj
3
Santa mierda, tiene mucho sentido ahora. Cambiar la configuración de red (wifi, lan, vpn, red doméstica, intranet de trabajo, iphone, ...) causa estos problemas extraños.
nils petersohn
41

Instalé Docker sin Toolbox en Windows 10, por lo que la versión que requiere Hyper-V está habilitada.

Para la versión 1.12 de Docker, tuve que ir a la barra de tareas, hacer clic con el botón derecho en el ícono de Docker, seleccionar Configuración -> Red y configurar el servidor DNS como fijo, de modo que use el servidor DNS de Google en 8.8.8.8.

Una vez que se cambió esa configuración, finalmente funcionó.

Mastergalen
fuente
Simplemente cambié a fijo y luego lo cambié y presioné aplicar. No necesitaba dejarlo fijo.
Philip Tinney
En mi caso, tengo instalado el cliente paraguas OpenDNS que establece la configuración de su red para usar 127.0.0.1 para DNS. Docker parece copiar la configuración de su tarjeta de red, por lo que poner localhost en su propia configuración de DNS que naturalmente no funcionará.
Richard Benson el
Trabajó en Windows 10
dominar el
16

La solución más sencilla es añadir la siguiente entrada en / etc / default / cargador de muelle archivo

export http_proxy = "http: // HOST: PORT /"

y reinicie el servicio docker

reinicio de la ventana acoplable de servicio

pr-pal
fuente
Que estaba destinado a ser un "ejemplo" servidor proxy, no esperaba que causaría una confusión
pr-pal
2
Para centos, está en el archivo / etc / sysconfig / docker.
Priyank Desai
Para MacOS, ingresé manualmente las configuraciones de proxy en las "Preferencias" de Docker Desktop -> "Proxies"
user1394
8

Actualización de agosto de 2016

Usando Docker para Mac (versión 1.12.0), vi problemas con el formulario:

➜  docker pull node
Using default tag: latest
Pulling repository docker.io/library/node
Network timed out while trying to connect to https://index.docker.io/v1/repositories/library/node/images. You may want to check your internet connection or if you are behind a proxy.`enter code here`

Esto se resolvió actualizando la configuración de red inalámbrica de mi MacBook Pro para incluir la siguiente entrada de DNS: 8.8.8.8

Para más información, consulte este (anticuado) tema que proporcionó la respuesta dada aquí.

arcseldon
fuente
7

Me encontré con este problema al ejecutar Docker en mi MAC (host) con Docker VM en VBOX 5.10. Es un problema de redes. La solución simple es agregar una red puenteada a la imagen VBOX. Puede usar la configuración NAT incluida presente con la VM, pero necesita cambiar el puerto ssh de 50375 a 2375.

dbaOnTap
fuente
1
Esto es lo que funcionó para mí (VirtualBox 5.0.10r104061 en Windows 10 Pro). Tenga en cuenta para los novatos más nuevos que yo que tendrá que hacerlo docker-machine stop default, luego agregue la red en el administrador de VirtualBox y luego docker-machine start default(cambie el nombre predeterminado de su máquina según sea necesario). Había probado la simple sugerencia de reinicio + evaluación de @ Mark-Smith primero y eso no lo hizo por mí.
David Brown
@dbaOnTap Eres un regalo del cielo, mi amigo. He estado atrapado en esto por días. Ejecutar Windows 10 Home con VirtualBox Latest Test Build (5.0.15-10594) y la última caja de herramientas de Docker (1.10.0), esto es lo único que funcionó para mí.
Cudacoder
4
sudo service docker stop
sudo service docker start

funciona para mi..

de algun modo, sudo service docker restart no funcionó

(RHEL7)

ItayB
fuente
4

En Windows 7 y si crees que estás detrás del proxy

  1. Inicie sesión en la máquina predeterminada

    $ docker-machine ssh default
    
  2. Actualizar perfil para actualizar la configuración del proxy

    docker@default:~$ sudo vi /var/lib/boot2docker/profile
    
  3. Añádase a continuación según corresponda

    # replace with your office's proxy environment
    export"HTTP_PROXY=http://PROXY:PORT"
    export"HTTPS_PROXY=http://PROXY:PORT"
    
    # you can add more no_proxy with your environment.
    export"NO_PROXY=192.168.99.*,*.local,169.254/16,*.example.com,192.168.59.*"
    
  4. Salida

    docker@default:~$ exit
    
  5. Reiniciar la máquina acoplable

    docker-machine restart default
    
  6. Actualizar la configuración del entorno

    eval $(docker-machine env default)
    

Los pasos anteriores están ligeramente modificados, pero como se indica en la guía de solución de problemas: https://docs.docker.com/toolbox/faqs/troubleshoot/#/update-varlibboot2dockerprofile-on-the-docker-machine

Vidish Datta
fuente
En mi caso, funciona, pero export"HTTP_PROXY=http://PROXY:PORTeliminé y `... HTTPS_PROXY ...` porque se accede a la red directamente sin autenticación.
Muka
2

Me encontré con el mismo problema ayer y ninguna de las respuestas "populares" (como arreglar DNS a 8.8.8.8) funcionó para mí. Finalmente me encontré con este enlace, y eso funcionó ... https://github.com/docker/for-win/issues/16

Entre Docker para Windows, Windows 10 e Hyper-V, parece haber un problema durante el proceso de creación del adaptador de red virtual. Específicamente, puede terminar con dos adaptadores de red "vEthernet (DockerNAT)". Verifique esto con Get-NetAdapter "vEthernet (DockerNAT)"(en una consola elevada de PowerShell). Si el resultado muestra más de un adaptador, puede deshabilitarlo y cambiarle el nombre con:

$vmNetAdapter = Get-VMNetworkAdapter -ManagementOS -SwitchName DockerNAT
Get-NetAdapter "vEthernet (DockerNAT)" | ? { $_.DeviceID -ne $vmNetAdapter.DeviceID } | Disable-NetAdapter -Confirm:$False -PassThru | Rename-NetAdapter -NewName "OLD"

Luego abra el Administrador de dispositivos y elimine el adaptador deshabilitado (por alguna razón puede hacerlo desde aquí, pero no desde la vista de adaptadores de Centro de redes y recursos compartidos).

Peter-John
fuente
1

Supongo que tienes un problema de red. ¿Estás detrás de un proxy? ¿Es posible que filtre la conexión docker.ioo bloquee el agente de usuario de Docker?

Instalé la caja de herramientas y ejecuté tu prueba. Funciona bien, aquí:

docker is configured to use the default machine with IP 192.168.99.101
For help getting started, check out the docs at https://docs.docker.com

bash-3.2$ docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world

535020c3e8ad: Pull complete 
af340544ed62: Already exists 
library/hello-world:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security.
Digest: sha256:d5fbd996e6562438f7ea5389d7da867fe58e04d581810e230df4cc073271ea52
Status: Downloaded newer image for hello-world:latest

Hello from Docker.
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker Hub account:
 https://hub.docker.com

For more examples and ideas, visit:
 https://docs.docker.com/userguide/

bash-3.2$
0x7d7b
fuente
Reinstalé Docker-Toolbox y ahora parece funcionar
daydreamer el
1
Eliminé la máquina existente que creé usando la opción forzar y la recreé, eso funciona. docker-machine rm -f <machine_name>
user1189332
1

En Windows 10. Simplemente haga clic con el botón derecho en el ícono del acoplador de la bandeja del sistema-> Configuración ... -> Descanso -> Reiniciar el acoplador

Argenisleon
fuente
0

Tuve este mismo problema con boot2docker y lo solucioné reiniciando con:

boot2docker restart
sigget
fuente
boot2docker está en desuso
Ultrasaurus
0

Me encontré con esto hoy 1.10.1y ninguna de las soluciones existentes funcionó. Traté de reiniciar, actualizar, regenerar certs, ...

Noté que tenía muchas redes creadas en la máquina. Después de eliminarlos con:

docker network ls | grep bridge | awk '{print $1}' | xargs -n1 docker network rm

El DNS comenzó a funcionar nuevamente.

Nota: puede ignorar errores sobre redes predefinidas

Schmunk
fuente
0

Si está detrás del proxy, no es suficiente establecer HTTP_PROXYyHTTPS_PROXY env. Debe configurarlo mientras crea la máquina.

Paramer para esto es --engine-env:

docker-machine create -d "virtualbox" --engine-env HTTP_PROXY=http://<PROXY>:<PORT> --engine-env HTTPS_PROXY=<PROXY>:<PORT> dev
Walery Strauch
fuente
0

En mi caso, al instalar Docker en Alpine Linux me sale el error:

La red agotó el tiempo de espera al intentar conectarse a https://index.docker.io/v1/repositories/library/ ........

Usando el script aquí: https://github.com/docker/docker/blob/master/contrib/download-frozen-image-v2.sh

Trabajos. Descarga la imagen usando curl y luego le muestra cómo descomprimirla y 'cargarla'.

Probé los métodos anteriores de DNS estático en 8.8.8.8 y deshabilité ipv6 (no entendí el proxy) y ninguno de ellos funcionó para mí.

EDITAR 8/9/2016:

Inicialmente estaba usando dropbear en lugar de openssh. Alpine reinstalado con openssh solucionó el problema.

El siguiente problema fue 'Error de estado de salida de ApplyLayer 1 stdout: stderr: chmod / bin / mount: permiso denegado' error durante la extracción.

De (nixaid.com/grsec-in-docker/):

Para construir la imagen de Docker, tuve que deshabilitar las siguientes protecciones grsec. Modifique /etc/sysctl.d/grsec.conf de la siguiente manera:

kernel.grsecurity.chroot_deny_chmod = 0 kernel.grsecurity.chroot_deny_mknod = 0 kernel.grsecurity.chroot_caps = 0 # relacionado con un paquete systemd / CAP_SETFCAP

en el caso de Alpine aunque es

/etc/sysctl.d/00-alpine.conf

reiniciar

5k3105
fuente
Me doy cuenta de que no es el caso aquí, pero para el futuro: deshabilitar IPv6 nunca es una respuesta correcta. Si la desactivación de IPv6 alguna vez "soluciona" un problema, el verdadero problema yace en otra parte.
Stephen
0

Reiniciar Docker o recrear la imagen no ayudó. Reinicié Windows en vano.

Sorprendentemente, cuando me metí en el contenedor en ejecución y curl https://index.docker.io/v1/repositories/library/hello-world/imagesobtuve una respuesta perfectamente válida.

He utilizado el estibador Caja de herramientas con VirtualBox en Windows de 64 bits 10 Pro.

La solución en mi caso fue desinstalar la versión anterior de Docker e instalar la nueva que usa Hyper-V en lugar de VirtualBox.

Ahora Docker funciona de nuevo.

Matthias Braun
fuente
0

Si está detrás del proxy, utilice los siguientes comandos

sudo mkdir /etc/systemd/system/docker.service.d

sudo cd /etc/systemd/system/docker.service.d

sudo vi http-proxy.conf
[Service]

Environment=HTTP_PROXY=http://proxy-server-ip:port" "NO_PROXY=localhost,127.0.0.1"

sudo systemctl daemon-reload 

sudo systemctl show --property=Environment docker

sudo systemctl restart docker

Pruebe esto si puede obtener la última ubuntu

sudo docker run -it ubuntu bash

No se puede encontrar la imagen ubuntu:latestlocalmente

último: extracción de la biblioteca / ubuntu b3e1c725a85f: extracción completa

4daad8bdde31: Pull complete

63fe8c0068a8: extracción completa

4a70713c436f: extracción completa

bd842a2105a8: extracción completa

Digerir:

sha256: 7a64bc9c8843b0a8c8b8a7e4715b7615e4e1b0d8ca3c7e7a76ec8250899c397a

Estado: Imagen más nueva descargada para ubuntu: más reciente

Finalmente funcionó para mí :)

Rakesh Prashanth S
fuente
0

Otro escenario: si su adaptador de red acoplable está deshabilitado, fallará con este error. El adaptador se llama "vEthernet (DockerNAT)" o similar. Aparentemente, este adaptador está involucrado de alguna manera en el comportamiento normal de extracción de la ventana acoplable. Habilítelo nuevamente para resolver el problema.

Yonatan
fuente
0

Cree un directorio desplegable systemd para el servicio acoplable:

$ sudo mkdir -p /etc/systemd/system/docker.service.d

Cree un archivo llamado /etc/systemd/system/docker.service.d/http-proxy.confque agregue la HTTP_PROXYvariable de entorno:

[Servicio]

Environment="HTTP_PROXY=http://proxy.example.com:80/"

Espero eso ayude

Soporte auxiLum
fuente
-1

En Windows esto sucedió cuando me mudé de una red de trabajo a una red doméstica.

Para resolverlo, ejecute:

  1. docker-machine stop
  2. docker-machine start
  3. docker-env
  4. "C:\Program Files\Docker Toolbox\docker-machine.exe" env | Invoke-Expression
Nir Weinberg
fuente