cloud:docker_faq

Questions souvent posées sur docker

Je met dans cette page un ensemble des questions les plus souvent posées en TP et un moyen de résoudre ces problèmes.

Suite à une commande docker … ou docker-compose vous obtenez cette erreur.

Le système dès le départ est pensé pour fonctionner en réseau. Ce que vous faites, comme toutes les commande “dockers …” utilise forcement un client qui essaye de contacter un serveur docker pour lui donner l'ordre de faire les choses.

S'il n'y a aucune configuration particulière, ce client docker contacte une socket locale de la machine localunixsocket qui est censée se trouver sur la même machine et qui a été crée au lancement du deamon docker. Ici, il n'y arrive pas et l'erreur signifie : “Je n'arrive pas à contacter le serveur local, est-il lancé ?” Elle est souvent suivie de If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.

Vous pouvez avoir 2 cas, soit le serveur local est sur la machine où vous tapez les commandes, soit il est distant (par exemple vous utilisez docker-machine qui crée des machines capable de gérer docker sur des plateformes distantes).

Ce qui peut arriver

  • Vous tapez simplement la commande sur la mauvaise machine (et oui cela arrive!) ⇒ vérifiez cela.
  • Vous n'avez pas les droits
    • êtes-vous administrateur de la machine ? Essayez en étant administrateur sudo docker …
    • vous ne pouvez pas être administrateur mais votre utilisateur est dans le groupe docker c'est à dire ceux qui on le droit de faire cela ⇒ vérifiez le. La commande groups doit afficher le groupe docker.
  • Le serveur docker n'a pas démarré :
    • vérifiez avec systemctl status docker
    • relancez le avec systemctl restart docker
    • éventuellement rendez le lancement automatique avec systemctl enable docker

Dans votre configuration, vous travailler à distance :

  • Dans ce cas, la commande dois savoir quelle serveur utiliser et comment vérifier son identité. Vérifiez que les variables d'environnement sont correctes (exemple de la docummentation de docker machine) :
DOCKER_HOST=tcp://192.168.99.101:2376
DOCKER_CERT_PATH=/Users/nathanleclaire/.docker/machines/.client
DOCKER_TLS_VERIFY=1
DOCKER_MACHINE_NAME=dev
  • Si vous utilisez justement docker-machine, il faut sans doute mettre en place l'environnement via la commande docker-machine env NOMMACHINE (voir la documentation ici)
  • cloud/docker_faq.txt
  • Dernière modification : 2018/02/28 10:44
  • de fabien.rico