Le réseau a expiré lors de la tentative de connexion à https://index.docker.io

J’ai installé Docker-Toolbox tout à l’heure en suivant leur page Web

J’ai commencé avec Docker QuickStart Terminal et je vois ci-après

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

Mais quand j’essaie d’exécuter docker pull hello-world , c’est ce que je vois

 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$ 

Qu’est-ce qui ne va pas?

J’ai eu le même problème ce matin et le suivant m’a corrigé:

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

Il semble que cela soit dû au fait que la machine virtuelle Docker se trouve dans un état étrange. Il y a un problème de github ouvert ici

J’ai installé Docker sans la boîte à outils sur Windows 10, donc la version nécessitant Hyper-V pour être activée.

Pour Docker version 1.12, je devais aller dans la barre des tâches, cliquez avec le bouton droit sur l’icône Docker, sélectionnez Paramètres -> Réseau et définissez le serveur DNS sur fixe afin d’utiliser le serveur DNS de Google à 8.8.8.8 .

Une fois ce réglage modifié, cela a finalement fonctionné.

La solution la plus simple consiste à append l’entrée suivante dans le fichier / etc / default / docker

export http_proxy = “http: // HOST: PORT /”

et redémarrer le service docker

redémarrage du service docker

Mise à jour août 2016

En utilisant Docker for Mac (version 1.12.0), on voyait des problèmes de la forme:

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

Cela a été résolu en mettant à jour les parameters de mon réseau sans fil MacBook Pro pour inclure l’entrée DNS suivante: 8.8.8.8

Pour plus d’informations, consultez ce numéro (daté) qui fournit la réponse donnée ici.

J’ai rencontré ce problème en exécutant Docker sur mon MAC (hôte) avec Docker VM dans VBOX 5.10. C’est un problème de réseau. La solution simple consiste à append un réseau ponté à l’image VBOX. Vous pouvez utiliser la configuration NAT incluse avec la VM, mais vous devez changer le port ssh de 50375 à 2375.

 sudo service docker stop sudo service docker start 

travaille pour moi..

en quelque sorte, sudo service docker restart n’a pas fonctionné

(RHEL7)

J’ai rencontré ce même problème hier et aucune des réponses “populaires” (comme la fixation de DNS à 8.8.8.8) n’a fonctionné pour moi. Je suis finalement arrivé à travers ce lien, et ça a fait l’affaire … https://github.com/docker/for-win/issues/16

Entre Docker pour Windows, Windows 10 et Hyper-V, il semble y avoir un problème lors du processus de création de la carte réseau virtuelle. Plus précisément, vous pourriez vous retrouver avec deux cartes réseau “vEthernet (DockerNAT)”. Vérifiez cela avec Get-NetAdapter "vEthernet (DockerNAT)" (dans une console PowerShell surélevée). Si le résultat montre plusieurs adaptateurs, vous pouvez le désactiver et le renommer avec:

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

Ensuite, ouvrez le Gestionnaire de périphériques et supprimez l’adaptateur désactivé (pour une raison quelconque, vous pouvez le faire à partir de là, mais pas à partir de la vue des adaptateurs Centre réseau et partage).

Sur Windows 7 et si vous pensez être derrière un proxy

  1. Connexion à la machine par défaut

     $ docker-machine ssh default 
  2. Mettre à jour le profil pour mettre à jour les parameters de proxy

     docker@default:~$ sudo vi /var/lib/boot2docker/profile 
  3. Ajouter ci-dessous comme il convient

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

     docker@default:~$ exit 
  5. Redémarrer la machine Docker

     docker-machine restart default 
  6. Mettre à jour les parameters d’environnement

     eval $(docker-machine env default) 

Les étapes ci-dessus sont légèrement modifiées, mais comme indiqué dans le guide de dépannage: https://docs.docker.com/toolbox/faqs/troubleshoot/#/update-varlibboot2dockerprofile-on-the-docker-machine

Je suppose que vous avez un problème de réseau. Êtes-vous derrière un proxy? Est-il possible qu’il filtre la connexion à docker.io ou bloque l’agent utilisateur docker?

J’ai installé la boîte à outils et exécuté votre test. Ça marche bien, ici:

 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$ 

Sous Windows 10. Cliquez avec le bouton droit sur l’icône du menu fixe systray-> Paramètres … -> Rest -> Restrart Docker

J’ai eu le même problème avec boot2docker et l’ai corrigé en le redémarrant avec:

 boot2docker restart 

Je viens de le rencontrer aujourd’hui avec 1.10.1 et aucune des solutions existantes n’a fonctionné. J’ai essayé de redémarrer, mettre à jour, régénérer des certs, …

J’ai remarqué que j’avais beaucoup de réseaux créés sur la machine. Après les avoir enlevés avec:

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

Le DNS a recommencé à fonctionner.

Remarque: vous pouvez ignorer les erreurs concernant les réseaux prédéfinis

Si vous êtes derrière un proxy, il ne suffit pas de définir HTTP_PROXY et HTTPS_PROXY env. Vous devez le définir lors de la création de la machine.

Le paramètre pour cela est --engine-env :

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

Dans mon cas, installer docker sur Alpine Linux, je reçois l’erreur:

Le réseau a expiré lors de la tentative de connexion à https://index.docker.io/v1/repositories/library/ ……..

En utilisant le script ici: https://github.com/docker/docker/blob/master/consortingb/download-frozen-image-v2.sh

Travaux. Il télécharge l’image en utilisant curl, puis vous montre comment désarchiver et “charger le docker”.

J’ai essayé les méthodes ci-dessus de DNS statique à 8.8.8.8 et de désactivation d’ipv6 (je n’ai pas compris le proxy) et aucun d’entre eux n’a fonctionné pour moi.

EDIT 9/8/2016:

J’utilisais initialement dropbear au lieu de openssh. Alpine réinstallé avec openssh a résolu le problème.

Le problème suivant était le suivant: ‘Statut de sortie de ApplyLayer 1 stdout: stderr: chmod / bin / mount: autorisation refusée’ erreur lors de l’extraction.

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

Pour construire l’image Docker, j’ai dû désactiver les protections grsec suivantes. Modifiez le fichier /etc/sysctl.d/grsec.conf comme suit:

kernel.grsecurity.chroot_deny_chmod = 0 kernel.grsecurity.chroot_deny_mknod = 0 kernel.grsecurity.chroot_caps = 0 # associé à un package systemd / CAP_SETFCAP

dans le cas de l’alpin, bien qu’il soit

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

redémarrer

Redémarrer Docker ou recréer l’image n’a pas aidé. J’ai redémarré Windows en vain.

Étonnamment, quand je me suis introduit dans le conteneur en cours d’exécution et que j’ai curl https://index.docker.io/v1/repositories/library/hello-world/images j’ai reçu une réponse parfaitement valide.

J’ai utilisé la boîte à outils Docker avec VirtualBox sur Windows 10 Pro 64 bits.

La solution dans mon cas était de désinstaller l’ancienne version de Docker et d’ installer la nouvelle qui utilise Hyper-V au lieu de VirtualBox.

Maintenant, Docker fonctionne à nouveau.

Si vous êtes derrière un proxy, utilisez les commandes ci-dessous

 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 

Essayez ceci si vous pouvez récupérer la dernière version d’ubuntu

 sudo docker run -it ubuntu bash 

Impossible de trouver l’image ubuntu:latest localement

last: Tirant de library / ubuntu b3e1c725a85f: Pull complete

4daad8bdde31: Tirez complet

63fe8c0068a8: Tirez complet

4a70713c436f: Tirez complet

bd842a2105a8: Tirez complet

Digérer:

sha256: 7a64bc9c8843b0a8c8b8a7e4715b7615e4e1b0d8ca3c7e7a76ec8250899c397a

Statut: Téléchargé nouvelle image pour Ubuntu: le plus récent

Ça a fonctionné pour moi enfin 🙂

Un autre scénario: si votre carte réseau Docker est désactivée, elle échouera avec cette erreur. L’adaptateur est nommé “vEthernet (DockerNAT)” ou similaire. Apparemment, cet adaptateur est impliqué d’une manière ou d’une autre dans le comportement normal de traction des dockers. Activez-le pour résoudre le problème.

Créez un répertoire drop-in systemd pour le service docker:

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

Créez un fichier appelé /etc/systemd/system/docker.service.d/http-proxy.conf qui ajoute la variable d’environnement HTTP_PROXY :

[Un service]

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

J’espère que cela aide

Sous Windows, cela s’est produit lorsque je suis passé d’un réseau de travail à un réseau domestique.

Pour le résoudre, lancez:

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