Timeout della rete durante il tentativo di connessione a https://index.docker.io


204

Ho installato Docker-Toolbox proprio ora mentre seguivo la loro pagina web

Ho iniziato con Docker QuickStart Terminale vedere di seguito

                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ 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$ 

Ma quando provo ad esibirmi docker pull hello-world, questo è quello che vedo

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$ 

Cosa c'è che non va?

Risposte:


482

Stamattina ho avuto lo stesso problema e ho risolto il problema per me:

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

Sembra che ciò sia dovuto al fatto che la macchina virtuale Docker si trova in uno stato strano. C'è un problema di github aperto qui


3
Ciò ha risolto anche il problema per me ... tuttavia, devo eseguirlo nuovamente ad ogni nuova sessione del terminale.
THX1137,

17
Sembra succedere quando passo dalla mia LAN di lavoro alla LAN di casa. Forse il DNS non è raggiungibile da casa.
Taco,

10
Posso confermare che si interrompe quando cambio reti WiFi. Il riavvio di Docker lo risolve sempre.
Stephen Harrison,

3
Perfetto, nel mio caso ho dovuto includere docker-machine regenerate-certs default.
rogeriopradoj,

3
santa merda, ora ha tutto senso. Il cambio delle impostazioni di rete (wifi, lan, vpn, rete domestica, intranet di lavoro, iphone, ...) causa questi strani problemi.
nils petersohn,

41

Ho installato Docker senza Toolbox su Windows 10, quindi la versione che richiede Hyper-V deve essere abilitata.

Per Docker versione 1.12 ho dovuto accedere alla barra delle applicazioni, fare clic con il tasto destro sull'icona Docker, selezionare Impostazioni -> Rete e impostare il server DNS su fisso, in modo che utilizzi il server DNS di Google all'indirizzo 8.8.8.8.

Una volta modificata, l'impostazione ha funzionato.


Sono appena passato a fixed, quindi sono tornato indietro e ho premuto il tasto applica. Non è stato necessario lasciarlo fisso.
Philip Tinney,

Nel mio caso ho installato il client ombrello OpenDNS che imposta le impostazioni di rete per utilizzare 127.0.0.1 per DNS. Docker sembra copiare le impostazioni dalla scheda di rete, quindi stava inserendo localhost nelle proprie impostazioni DNS che naturalmente non funzioneranno.
Richard Benson,

Ha lavorato su Windows 10
master

16

La soluzione più semplice è quella di aggiungere la seguente voce in / / etc default / finestra mobile di file

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

e riavviare il servizio docker

riavvio della finestra mobile di servizio


Doveva essere un server proxy "di esempio", non si aspettava che potesse causare confusione
pr-pal

2
Per centos, è nel file / etc / sysconfig / docker.
Priyank Desai,

Per MacOS, ho inserito manualmente le configurazioni proxy in "Preferenze" di Docker Desktop -> "Proxy"
user1394

8

Aggiornamento agosto 2016

Utilizzando Docker per Mac (versione 1.12.0), sono stati riscontrati problemi nel modulo:

➜  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`

Ciò è stato risolto aggiornando le impostazioni della mia rete wireless MacBook Pro per includere la seguente voce DNS: 8.8.8.8

Per ulteriori informazioni, si prega di vedere questo (datato) problema che ha fornito la risposta data qui.


7

Ho riscontrato questo problema eseguendo Docker sul mio MAC (host) con Docker VM in VBOX 5.10. È un problema di rete. La semplice soluzione è aggiungere una rete a ponte all'immagine VBOX. È possibile utilizzare la configurazione NAT inclusa presente con la macchina virtuale, ma è necessario modificare la porta ssh da 50375 a 2375.


1
Questo è ciò che ha funzionato per me (VirtualBox 5.0.10r104061 su Windows 10 Pro). Nota ai neofiti più recenti di me che dovrai docker-machine stop default, quindi aggiungi la rete nel gestore VirtualBox, quindi docker-machine start default(modificando il nome predefinito della tua macchina come necessario). Avevo provato prima il semplice riavvio di + Mark-Smith + eval env suggestion e ciò non ha funzionato per me.
David Brown,

@dbaOnTap Sei una manna dal cielo amico mio. Sono stato bloccato su questo per giorni. Con Windows 10 Home con VirtualBox Latest Test Build (5.0.15-10594) e la più recente finestra mobile della finestra mobile (1.10.0), questa è l'unica cosa che ha funzionato per me.
cudacoder,

4
sudo service docker stop
sudo service docker start

per me va bene..

in qualche modo, sudo service docker restartnon ha funzionato

(RHEL7)


4

Su Windows 7 e se ritieni di essere dietro al proxy

  1. Accedere alla macchina predefinita

    $ docker-machine ssh default
    
  2. Aggiorna profilo per aggiornare le impostazioni del proxy

    docker@default:~$ sudo vi /var/lib/boot2docker/profile
    
  3. Aggiungi da sotto come appropriato

    # 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. Uscita

    docker@default:~$ exit
    
  5. Riavvia la finestra mobile

    docker-machine restart default
    
  6. Aggiorna le impostazioni dell'ambiente

    eval $(docker-machine env default)
    

I passaggi sopra sono leggermente modificati ma come indicato nella guida alla risoluzione dei problemi: https://docs.docker.com/toolbox/faqs/troubleshoot/#/update-varlibboot2dockerprofile-on-the-docker-machine


Nel mio caso, funziona, ma ho rimosso export"HTTP_PROXY=http://PROXY:PORTe `... HTTPS_PROXY ...` perché si accede alla rete direttamente senza autorizzazione.
Muka

2

Ieri ho riscontrato questo stesso identico problema e nessuna delle risposte "popolari" (come la correzione del DNS su 8.8.8.8) ha funzionato per me. Alla fine mi sono imbattuto in questo link e questo ha funzionato ... https://github.com/docker/for-win/issues/16

Tra Docker per Windows, Windows 10 e Hyper-V, sembra esserci un problema durante il processo di creazione della scheda di rete virtuale. In particolare, potresti finire con due adattatori di rete "vEthernet (DockerNAT)". Verificare con Get-NetAdapter "vEthernet (DockerNAT)"(in una console PowerShell elevata). Se il risultato mostra più di un adattatore, è possibile disabilitarlo e rinominarlo con:

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

Quindi apri Gestione dispositivi ed elimina l'adattatore disabilitato (per qualche motivo puoi farlo da qui, ma non dalla vista Schede di rete e Centro condivisione).


1

Presumo che tu abbia un problema di rete. Sei dietro un proxy? È possibile che filtri la connessione docker.ioo blocchi l'agente utente della finestra mobile?

Ho installato la cassetta degli attrezzi ed ho eseguito il test. Funziona bene, qui:

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$

Ho reinstallato Docker-Toolbox e ora sembra funzionare
sognatore ad occhi aperti il

1
Ho rimosso la macchina esistente che ho creato usando l'opzione force e l'ho ricreata - che funziona. docker-machine rm -f <machine_name>
user1189332

1

Su Windows 10. Basta fare clic destro sull'icona della finestra mobile systray-> Impostazioni ... -> Riposo -> Riavvia finestra mobile


0

Ho avuto lo stesso problema con boot2docker e risolto riavviandolo con:

boot2docker restart

boot2docker è obsoleto
Ultrasaurus,

0

Mi sono appena imbattuto in questo oggi con 1.10.1e nessuna delle soluzioni esistenti ha funzionato. Ho provato a riavviare, aggiornare, rigenerare certificati, ...

Ho notato che sul computer sono state create molte reti. Dopo averli rimossi con:

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

Il DNS ha ripreso a funzionare.

Nota: è possibile ignorare gli errori relativi alle reti predefinite


0

Se si è dietro proxy, non è sufficiente impostare HTTP_PROXYed HTTPS_PROXYenv. Dovresti impostarlo durante la creazione della macchina.

Il parametro per questo è --engine-env:

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

0

Nel mio caso, installando la finestra mobile su Alpine Linux ottengo l'errore:

Timeout della rete durante il tentativo di connessione a https://index.docker.io/v1/repositories/library/ ........

Utilizzando lo script qui: https://github.com/docker/docker/blob/master/contrib/download-frozen-image-v2.sh

Lavori. Scarica l'immagine usando l'arricciatura e poi ti mostra come decomprimere e 'caricarlo sulla docker'.

Ho provato i suddetti metodi di DNS statico a 8.8.8.8 e disabilitando ipv6 (non ho capito la cosa del proxy) e nessuno di loro ha funzionato per me.

MODIFICA 9/8/2016:

Inizialmente stavo usando dropbear invece di openssh. Reinstallato Alpine con openssh ha risolto il problema.

Il problema successivo è stato "ApplyLayer exit status 1 stdout: stderr: chmod / bin / mount: permesso negato" durante pull.

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

Per creare l'immagine Docker, ho dovuto disabilitare le seguenti protezioni grsec. Modifica /etc/sysctl.d/grsec.conf come segue:

kernel.grsecurity.chroot_deny_chmod = 0 kernel.grsecurity.chroot_deny_mknod = 0 kernel.grsecurity.chroot_caps = 0 # relativo a un pacchetto systemd / CAP_SETFCAP

nel caso di alpine, comunque

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

riavvio


Mi rendo conto che non è il caso qui, ma per il futuro: disabilitare IPv6 non è mai una risposta corretta. Se disabilitare IPv6 "risolve" un problema, il vero problema sta altrove.
Stephen,

0

Riavviare Docker o ricreare l'immagine non ha aiutato. Ho riavviato Windows inutilmente.

Sorprendentemente, quando sono entrato nel container e curl https://index.docker.io/v1/repositories/library/hello-world/imagesho avuto una risposta perfettamente valida.

Ho usato la Docker Toolbox con VirtualBox su Windows 10 Pro a 64 bit.

La soluzione nel mio caso era quella di disinstallare la vecchia versione di Docker e installare quella nuova che utilizza Hyper-V anziché VirtualBox.

Ora Docker funziona di nuovo.


0

Se sei dietro al proxy, ti preghiamo gentilmente di usare i comandi seguenti

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

Prova questo se riesci a recuperare Ubuntu più recente

sudo docker run -it ubuntu bash

Impossibile trovare l'immagine ubuntu:latestlocalmente

ultimo: estrazione dalla libreria / ubuntu b3e1c725a85f: estrazione completata

4daad8bdde31: pull completato

63fe8c0068a8: pull completo

4a70713c436f: pull completato

bd842a2105a8: pull completato

Digerire:

sha256: 7a64bc9c8843b0a8c8b8a7e4715b7615e4e1b0d8ca3c7e7a76ec8250899c397a

Stato: immagine più recente scaricata per ubuntu: ultima

Alla fine ha funzionato per me :)


0

Un altro scenario: se la scheda di rete docker è disabilitata, non riuscirà con questo errore. L'adattatore è denominato "vEthernet (DockerNAT)" o simile. Apparentemente questo adattatore è coinvolto in qualche modo nel normale comportamento di pull docker. Abilitalo per risolvere il problema.


0

Creare una directory drop-in systemd per il servizio docker:

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

Crea un file chiamato /etc/systemd/system/docker.service.d/http-proxy.confche aggiunge la HTTP_PROXYvariabile di ambiente:

[Servizio]

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

Spero che sia d'aiuto


-1

Su Windows questo è successo quando mi sono trasferito da una rete di lavoro a una rete domestica.

Per risolverlo, esegui:

  1. docker-machine stop
  2. docker-machine start
  3. docker-env
  4. "C:\Program Files\Docker Toolbox\docker-machine.exe" env | Invoke-Expression
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.