web-dev-qa-db-fra.com

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

J'ai installé Docker-Toolbox tout en suivant leur page web

J'ai commencé avec Docker QuickStart Terminal et vois ce qui suit

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

202
daydreamer

J'ai eu le même problème ce matin et ce qui suit l'a résolu pour moi:

$ 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 met dans un état étrange. Il y a un problème ouvert github ici

479
Mark Smith

J'ai installé Docker sans la Boîte à outils sous Windows 10, donc la version nécessitant l'activation de Hyper-V.

Pour la version 1.12 de Docker, je devais accéder à la barre des tâches, cliquer avec le bouton droit de la souris sur l'icône Docker, sélectionner Paramètres -> Réseau et régler le serveur DNS sur fixed afin qu'il utilise le serveur DNS de Google à 8.8.8.8.

Une fois que ce paramètre a été modifié, cela a finalement fonctionné.

39
Mastergalen

La solution la plus simple consiste à ajouter l'entrée suivante dans/etc/default/docker file

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

et redémarrez le service Docker 

redémarrage du docker de service  

14
prabhakar palanivel

Mise à jour août 2016

Utilisation de Docker pour Mac (version 1.12.0), rencontrait 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`

Ce problème a été résolu en mettant à jour les paramètres de mon réseau sans fil MacBook Pro afin d'inclure l'entrée DNS suivante: 8.8.8.8

Pour plus d’informations, veuillez consulter le (date) numéro qui a fourni la réponse donnée ici.

8
arcseldon

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

7
dbaOnTap
Sudo service docker stop
Sudo service docker start

travaille pour moi..

d'une manière ou d'une autre, Sudo service docker restart n'a pas fonctionné

(RHEL7)

4
ItayB

Hier, j'ai rencontré exactement le même problème et aucune des réponses "populaires" (comme la fixation de DNS à 8.8.8.8) ne fonctionnait pour moi. J'ai fini par arriver par ce lien, et c'est ce qui 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 pouvez vous retrouver avec deux cartes réseau "vEthernet (DockerNAT)". Vérifiez ceci avec Get-NetAdapter "vEthernet (DockerNAT)" (dans une console PowerShell élevée). Si le résultat indique 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"

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

2
Peter-John

Sous 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 paramètres de proxy

    docker@default:~$ Sudo vi /var/lib/boot2docker/profile
    
  3. Ajouter à partir de ci-dessous, le cas échéant

    # 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 le docker

    docker-machine restart default
    
  6. Mettre à jour les paramètres de l'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

2
Vidish Datta

Sous Windows 10. Il suffit de cliquer avec le bouton droit de la souris sur l'icône du docker Systray -> Paramètres ... -> Réinitialiser -> Redémarrer Docker.

1
argenisleon

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 en docker.io ou bloque l'agent utilisateur docker? 

J'ai installé la boîte à outils et exécuté votre test. Cela fonctionne 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$
1
h3nrik

Dans mon cas, l’installation de docker sur Alpine Linux, j’obtiens l’erreur suivante:

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

Utilisation du script ici: https://github.com/docker/docker/blob/master/contrib/download-frozen-image-v2.sh

Travaux. Il télécharge l'image à l'aide de curl, puis vous montre comment le désarchiver et le "charger" dans le menu fixe.

J'ai essayé les méthodes ci-dessus de DNS statique à 8.8.8.8 et de désactiver ipv6 (je ne comprenais pas le rôle du proxy) et aucune d'entre elles ne fonctionnait pour moi.

EDIT 08/09/2016:

J'utilisais initialement dropbear au lieu d'Opensh. Alpine réinstallé avec openssh a résolu le problème.

Le problème suivant était l'erreur 'ApplyLayer exit status 1 stdout: stderr: chmod/bin/mount: permission denied' lors de l'extraction.

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

Pour construire l'image Docker, j'ai dû désactiver le grsec suivant protections. 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 # lié à un package systemd/CAP_SETFCAP

dans le cas d'Alpine si c'est 

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

redémarrer

0
5k3105

Créez un répertoire système systemd pour le service de menu fixe:

$ 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 ça aide

0
auxiLum Support

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

Étonnamment, quand je suis entré dans le conteneur en cours et que j'ai curl https://index.docker.io/v1/repositories/library/hello-world/images, j'ai obtenu une réponse parfaitement valide. 

J'ai utilisé la Docker Toolbox avec VirtualBox sur Windows 10 Pro 64 bits.

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

Maintenant, Docker fonctionne à nouveau.

0
Matthias Braun

Autre scénario: si votre carte réseau docker est désactivée, cette erreur échouera. L'adaptateur s'appelle "vEthernet (DockerNAT)" ou similaire. Apparemment, cet adaptateur est impliqué d'une manière ou d'une autre dans le comportement normal d'attraction du docker. Activez-le pour résoudre le problème.

0
Yonatan

Si vous êtes derrière un proxy, définir HTTP_PROXY et HTTPS_PROXY env ne suffit pas. 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://<PROXY>:<PORT> --engine-env HTTPS_PROXY=<PROXY>:<PORT> dev
0
Walery Strauch

Si vous êtes derrière un proxy, veuillez utiliser 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 aller chercher le dernier Ubuntu 

Sudo docker run -it ubuntu bash

Impossible de trouver l'image ubuntu:latest localement

dernière: Tirage de la bibliothèque/ubuntu b3e1c725a85f: Pull complete 

4daad8bdde31: Pull complet 

63fe8c0068a8: Pull complet 

4a70713c436f: Pull complet 

bd842a2105a8: Pull complet 

Digérer: 

sha256: 7a64bc9c8843b0a8c8b8a7e4715b7615e4e1b0d8ca3c7e7a76ec8250899c397a

Statut: Téléchargé nouvelle image pour ubuntu: dernier

Cela a fonctionné pour moi enfin :)

0
Rakesh Prashanth S

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

boot2docker restart
0
sigget

Je viens de rencontrer ceci aujourd'hui avec 1.10.1 et aucune des solutions existantes ne fonctionnait. J'ai essayé de redémarrer, mettre à jour, régénérer des certs, ...

J'ai remarqué que de nombreux réseaux avaient été 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

0
schmunk