Después de actualizar mi versión de Docker 0.8.0
, recibo un mensaje de error al ingresar sudo docker version
:
Client version: 0.8.0
Go version (client): go1.2
Git commit (client): cc3a8c8
2014/02/19 12:54:16 Can't connect to docker daemon. Is 'docker -d' running on this host?
Y seguí las instrucciones e ingresé el comando sudo docker -d
, y obtuve esto:
[/var/lib/docker|2462000b] +job initserver()
[/var/lib/docker|2462000b.initserver()] Creating server
open /var/lib/docker/aufs/layers/cf2414da53f9bcfaa48bc3d58360d7f1cfd3784e4fe51fbef95197709dfc285d: no such file or directory[/var/lib/docker|2462000b] -job initserver() = ERR (1)
2014/02/19 12:55:57 initserver: open /var/lib/docker/aufs/layers/cf2414da53f9bcfaa48bc3d58360d7f1cfd3784e4fe51fbef95197709dfc285d: no such file or directory
¿Cómo resuelvo el problema?
no such file or directory[/var/lib/docker|2462000b]
. ¿Existe/var/lib/docker
en su sistema? Si no es así, creo que necesitas reinstalar Docker.Respuestas:
Linux
Los pasos posteriores a la instalación para la documentación de Linux revelan los siguientes pasos:
Mac OS X
Como dice Dayel Ostraco , es necesario agregar variables de entorno:
El
docker-machine start
comando genera los comentarios para guiar el proceso.fuente
newgrp
comando para iniciar un nuevo shell en este nuevo grupo. De esta manera:newgrp docker
.alias docker='sudo docker'
hizo el truco. : pLinux
Para ejecutar docker daemon en Linux (desde CLI ), ejecute:
Nota: Omita el
$
carácter al copiar y pegar.En RedHat / CentOS, ejecute:
sudo systemctl start docker
.Para inicializar el sistema de archivos "base", ejecute:
o manualmente como:
Instalar
docker-machine
en LinuxPara instalar binarios de máquina en Linux:
en la zona:
global:
Mac OS
En macOS, el
docker
binario es solo un cliente y no puede usarlo para ejecutar el docker daemon, porque Docker daemon usa características de kernel específicas de Linux, por lo tanto, no puede ejecutar Docker de forma nativa en OS X. Por lo tanto, debe instalardocker-machine
para crear VM y adjuntar a ella.Instalar
docker-machine
en macOSSi aún no tiene el
docker-machine
comando, instálelo utilizando uno de los siguientes métodos:brew install docker-machine docker
.manualmente desde GitHub :
Consulte: Comience con Docker para Mac .
Configurar
docker-machine
en macOSPara iniciar Docker Machine a través de Homebrew, ejecute:
Para crear una
default
máquina (si no tiene una, vea:)docker-machine ls
:Luego configure el entorno para el cliente Docker:
Luego verifique nuevamente enumerando los contenedores:
Consulte: Comience con Docker Machine y una máquina virtual local .
Instalar Docker.app en macOS
Alternativamente a la solución anterior, puede instalar una aplicación Docker:
Mira esta publicación para más detalles . Consulte también: No se puede conectar al demonio Docker en macOS
fuente
docker-toolbox
desde docs.docker.com/toolbox/toolbox_install_macsudo rm -rf /var/lib/docker
y luego reiniciarlo funcionó. Estaba realmente atrapado y ninguna otra solución funcionó para mí.Si está ejecutando Docker en OS X, ejecutar la siguiente evaluación me ha funcionado.
Si prefiere no tener que ejecutar esta instrucción eval en cada sesión de terminal, puede agregar esto a su
bash_profile
:Asegúrese de reiniciar la sesión de terminal o ejecutar source
bash_profile
para que los cambios surtan efecto.fuente
Error checking TLS connection: Host is not running
... ejecutar esta evaluación después de que el comandodocker-machine start default
hizo el truco.Después de una investigación detallada, este problema parece suceder cada vez que se reinicia Mac OS X (o se reinicia la máquina virtual Docker), lo que impide que el cliente Docker se conecte al demonio Docker.
Para resolver el problema, puede:
A) Vuelva a instalar Docker Toolbox utilizando el instalador oficial ( https://www.docker.com/products/docker-toolbox ), o simplemente
B) Ejecute los siguientes comandos en orden:
C) Igual que (B), también puede copiar y pegar la siguiente línea para ejecutar los tres comandos:
En caso de que obtenga el siguiente error:
simplemente vuelva a ejecutar los tres comandos otra vez, y debería funcionar la segunda vez.
fuente
Esto generalmente ocurre cuando no estás en el
docker
grupo. Puede agregarse aldocker
grupo con:o
Después de esto, debe cerrar sesión y volver a iniciar sesión en el servidor.
Alternativamente, puede
sudo
cada comando Docker.fuente
Si todas las otras soluciones anteriores no funcionan, puede intentar verificar la propiedad de
/var/run/docker.sock
:Si no eres el propietario, cambia la propiedad con el comando:
Luego puede continuar e intentar ejecutar los comandos de Docker sin problemas: D
fuente
La mejor manera de descubrir por qué Docker no funciona es ejecutar el demonio manualmente.
El demonio Docker inicia sesión en STDOUT, por lo que comenzará a escupir lo que sea que esté haciendo.
Aquí estaba cuál era mi problema:
Esto se debió a que la instancia había sido clonada desde otra máquina virtual. Solo tuve que eliminar el archivo pid, y todo funcionó después.
Por supuesto, en lugar de asumir ciegamente que esto funcionará, sugeriría ejecutar el daemon manualmente una vez más y revisar la salida del registro en busca de cualquier otro error antes de iniciar la copia de seguridad del servicio.
fuente
apparmor
paquete que faltaba .dockerd -D
Si recibe el mensaje
Can't connect to docker daemon. Is 'docker -d' running on this host?
, puede verificarlodocker version
.Si ve información como Docker Client se está ejecutando. pero Docker Server no lo es, obviamente es necesario iniciar el servidor Docker.
En CentOS, puede usar
service
para iniciar o detener el servidor Docker.Luego, después de escribir
docker version
, obtendrá la información de Docker Client y Docker Server , y se iniciará el demonio Docker.fuente
sudo service docker start
También funcionó para mí en Ubuntu 14.04.Haz una
ps aux | grep docker
para ver si el demonio se está ejecutando. Si no se ejecuta/etc/init.d/docker start
fuente
sudo service docker start
me dice "docker start / running, process 4633" y luego mesudo service docker status
dice "docker stop / waiting"Reinicio Docker después de instalarlo:
Y funciona.
fuente
Tengo un problema similar Tuve que cerrar sesión y volver a iniciar sesión en Shell porque acabo de instalar Docker y el siguiente comando no se mostró en mi entorno.
fuente
Me he enfrentado a este problema y reinicié Docker con estos comandos:
Pero no resolví mi problema, porque olvidé ejecutar mis comandos Docker sin él
sudo
. Para aquellos que enfrentan este problema, intente verificarlo.Tratar
en lugar de esto:
fuente
docker build
Ubuntu Xenial.Puedes usar el comando
simplemente comenzarlo.
fuente
sudo service docker restart
, es más fácil 😊Tengo el mismo error e intento
docker-machine regenerate-certs
oeval..
no funcionó para mí.Esto en OS X 10.11.3 (El Capitan) y Docker v1.10.1. Pude solucionarlo solo eliminando y recreando docker-machine nuevamente.Fuente
Si se está ejecutando
docker-machine ls
, muestra una salida similar a la siguiente;Intente quitar su máquina Docker con;
¿Dónde
default
está el nombre de su máquina Docker? Entonces;Crea una nueva máquina Docker.
Verifique que todo parezca normal ahora (sin errores o Docker desconocido) con:
Finalmente, no olvide ejecutar
"$(docker-machine env default)"
antes de continuar o ejecutar el Docker Quickstart Terminal que lo hace por usted ...fuente
Tuve el mismo problema: "No se puede conectar a Docker Daemon". (excepto que no recibí ningún error de "archivo no encontrado" al intentar iniciar el servidor).
'ps' mostró que "/ usr / bin / docker -d" todavía se estaba ejecutando
Sin embargo, me di cuenta de que nunca había logrado ejecutar el servidor. Cada intento había producido
Así que me di cuenta tardíamente de que la instalación de Docker tal vez había registrado el demonio con el advenedizo, lo que lo había iniciado por mí. Por lo tanto, intentar matar al demonio para reiniciarlo manualmente falla (operación no permitida). Entonces hice un
en el proceso del demonio. Otro demonio inmediatamente tomó su lugar, y este nuevo ahora permite que mi cliente CLI se conecte:
fuente
Intente agregar el usuario actual al
docker
grupo:Luego cierre sesión e inicie sesión.
fuente
Utilice la aplicación Docker CE
Mac OS
Use la nueva aplicación Docker Community Edition para macOS. Por ejemplo:
Desinstale todos los paquetes de Docker Homebrew que haya instalado hasta ahora:
Instale una aplicación manualmente o a través de Homebrew-Cask :
Nota: Esta aplicación va a crear enlaces necesarios a
docker
,docker-compose
,docker-machine
, etc.Después de ejecutar la aplicación, verifique el ícono de una ballena Docker en el menú de estado.
docker
,docker-compose
,docker-machine
comandos como de costumbre en el terminal .Relacionado:
Linux / Windows
Descargue Docker CE desde la página de descarga y siga las instrucciones.
fuente
Sabía que ya hay muchas respuestas en esta publicación. Solo me gustaría agregar una respuesta simple que resuelva el problema mencionado anteriormente.
Ejecute el comando anterior e iniciará todos los hilos / servicios relacionados con Docker.
fuente
Acabo de tener el mismo problema, ejecutándome en Amazon AWS .
Esto es lo que intenté:
docker-machine
localmente con una instancia de AWS ya existentedockerd
funcionó ...Se probó a continuación en la máquina remota:
Eliminé
/var/lib/docker
y desinstalé todo, pero no hubo éxito después de la reinstalación. Desafortunadamente no tengo registros almacenados de fallas, perodocker.service
simplemente me negué a comenzar.Sin embargo, lo que finalmente resolvió mi problema fue básicamente:
fuente
Siguiente sitio Docker's DOC: Administre Docker como usuario no root
1) Crear grupo de Docker
2) Hacer que el usuario pertenezca al grupo acoplable para obtener los privilegios del grupo.
Compruebe si la variable de entorno DOCKER_HOST está configurada para su shell.
Si existiera,
Entonces esto debería funcionar:
fuente
unset DOCKER_HOST
trabajó para míSi está ejecutando en OS X con la herramienta Docker, siga esto.
Reinicie el demonio y configure su entorno:
Y entonces
Finalmente,
Para probar que el demonio se está ejecutando:
docker ps -a
odocker-machine ls
. Esto enumerará todos los contenedores.fuente
Tengo el mismo problema. En CentOS 6.5:
Si muestra que no existe un proceso de Docker Daemon, entonces escribo:
Entonces Ctrl+ Dpara detener Docker. Debido a que usamos la
-d
opción, Docker se ejecutará como demonio. Ahora podemos hacer:Entonces puedo hacer un
docker pull centos
. Eso es todo.NOTA: Si esto no funciona, puede intentarlo
yum update
y luego repetirlo nuevamente, porqueyum install
antes de esto.fuente
Es posible que el servicio Docker no se esté ejecutando.
Si está en un RedHat / Fedora / CentOS, intente esto:
sudo systemctl start docker
Si estás en Ubuntu / Debian:
sudo service start docker
Docker comenzará a ejecutarse en su host y puerto respectivo.
fuente
Compruebe si está utilizando Docker Machine :)
Correr
docker-machine env default
debería hacer el truco.Porque según la documentación:
https://docs.docker.com/machine/overview/
fuente
fuente
Para solucionarlo, debe emitir los siguientes comandos en el terminal. Explicaré cada paso:
Ahora, si desea simplificar las cosas y obtener más tiempo, puede ejecutar mi
init
script con el parámetroinstallDocker
:El reinicio es opcional, pero le sugiero que lo haga para asegurarse de que todo funcione sin problemas.
fuente
Tuve el mismo problema al ejecutar Docker 1.10 en Ubuntu 14.04 y ninguna de las respuestas dadas funcionó. Para mí, la solución fue especificar el controlador de almacenamiento al ejecutar el demonio Docker.
fuente
Si usa gitlab-ci / gitlab-runners, obtendrá ese error si no tiene permisos de acceso
/var/run/docker.sock
.Para resolver el problema:
Verificar con:
Espero que ayude.
fuente
Si la regeneración de certificados TLS no funciona
Intente reiniciar la máquina acoplable y establezca la variable env:
Compruebe si la máquina está funcionando con:
o alternativamente
Esto funcionó para mí. Sin embargo, si aún no tiene el demonio, la página de solución de problemas de Docker detalla un proceso para detener, eliminar y crear una nueva máquina.
fuente
También recibí el problema "No se puede conectar con el Docker Daemon. ¿Se está ejecutando el Docker Daemon en este host?".
Me había olvidado de usar
sudo
. Espero que nos ayude a algunos de nosotros.fuente