El comando Docker no se puede conectar al demonio Docker

Resuelto kramer65 asked hace 9 años • 26 respuestas

Quiero pasarme a Docker, así que comencé a experimentar con él. Instalé Docker en una instalación VirtualBox Ubuntu 15.10 (Wily Werewolf) y, como se sugiere aquí, intenté ejecutar una imagen básica de nginx Docker:

$ docker run --name mynginx1 -P -d nginx
Cannot connect to the Docker daemon. Is the docker daemon running on this host?

Entonces verifiqué si Docker se estaba ejecutando:

$ sudo service docker status
● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
   Active: active (running) since vr 2015-11-06 08:41:48 CET; 15min ago
     Docs: https://docs.docker.com
 Main PID: 7542 (docker)
   CGroup: /system.slice/docker.service
           └─7542 /usr/bin/docker daemon -H fd://

nov 06 08:41:47 kramer65-VirtualBox systemd[1]: Starting Docker Application Container Engine...
nov 06 08:41:47 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:47.900410966+01:00" level=info msg="API ...ock"
nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.033514149+01:00" level=info msg="Fire...lse"
nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.141594321+01:00" level=info msg="Defa...ess"
nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.416294436+01:00" level=warning msg="Y...it."
nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.565507576+01:00" level=info msg="Load...rt."
nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.567907022+01:00" level=info msg="Load...ne."
nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.567945214+01:00" level=info msg="Daem...ion"
nov 06 08:41:48 kramer65-VirtualBox docker[7542]: time="2015-11-06T08:41:48.567969891+01:00" level=info msg="Dock....9.0
nov 06 08:41:48 kramer65-VirtualBox systemd[1]: Started Docker Application Container Engine.
Hint: Some lines were ellipsized, use -l to show in full.

Esto sugiere que el demonio Docker ya se está ejecutando, pero para estar seguro, simplemente inicié el demonio Docker manualmente:

$ sudo docker daemon
INFO[0000] API listen on /var/run/docker.sock           
INFO[0000] [graphdriver] using prior storage driver "aufs" 
INFO[0000] Firewalld running: false                     
INFO[0000] Default bridge (docker0) is assigned with an IP address XXX.XX.X.X/XX. Daemon option --bip can be used to set a preferred IP address 
WARN[0000] Your kernel does not support swap memory limit. 
INFO[0000] Loading containers: start.                   

INFO[0000] Loading containers: done.                    
INFO[0000] Daemon has completed initialization          
INFO[0000] Docker daemon                                 commit=76d6bc9 execdriver=native-0.2 graphdriver=aufs version=1.9.0

Luego intenté ejecutar la imagen nuevamente, pero con el mismo resultado:

$ docker run --name mynginx1 -P -d nginx
Cannot connect to the Docker daemon. Is the docker daemon running on this host?

Intenté hacer sudo con el comando, pero fue en vano. ¿Qué estoy haciendo mal aquí?

kramer65 avatar Nov 06 '15 15:11 kramer65
Aceptado

Debe agregar su usuario actual al grupo de Docker de la siguiente manera:

sudo usermod -aG docker $(whoami)

luego cierre sesión e inicie sesión nuevamente en el sistema o reinicie el sistema. prueba pordocker version

Para obtener más información sobre cómo instalar Docker-Engine, siga la documentación de Docker.

Zubair Alam avatar Nov 18 '2015 14:11 Zubair Alam

Agregue el usuario al grupo de Docker

  • Agregue el grupo de la ventana acoplable si aún no existe:

    sudo groupadd docker

  • Agregue el usuario conectado "${USER}" al grupo de la ventana acoplable:

    sudo gpasswd -a ${USER} docker

  • Reinicie el demonio Docker:

    sudo service docker restart

  • Realice newgrp dockero cierre sesión/inicie sesión para activar los cambios en los grupos.

Jun avatar Jan 19 '2016 06:01 Jun

Normalmente, el siguiente comando funciona:

sudo service docker restart

Esto, en lugar de docker startlos casos en los que Docker parece ya estar ejecutándose.

Si eso funciona, como se sugiere en otra respuesta y en este problema de GitHub , si no se ha agregado al grupo de la ventana acoplable, hágalo ejecutando:

sudo usermod -aG docker <your-username> 

Y lo más probable es que esté listo para comenzar.


En cuanto a cualquier otra persona que se encuentre con esto, en algunos sistemas operativos la ventana acoplable no se inicia inmediatamente después de instalarla y, como resultado, can't connect to daemon messageaparece lo mismo. En este caso, primero puede verificar que Docker no se esté ejecutando verificando el estado de su servicio Docker ejecutando:

sudo service docker status

Si el resultado se parece a: docker stop/waitingen lugar de , docker start/running, process 15378obviamente significa que Docker no está activo. En este caso, asegúrese de comenzar con:

sudo service docker start

Y, como antes, lo más probable es que esté listo para comenzar.

nota personal: recibo el error del título de la pregunta cuando olvido ejecutar el dockercomando con sudo:

sudo docker run ...

[Ubuntu 15.10]

MartyIX avatar Dec 01 '2015 12:12 MartyIX

Después de instalar Docker en Ubuntu, ejecuté el siguiente comando:

sudo service docker start

¿Lo has probado?

yushulx avatar Nov 06 '2015 08:11 yushulx