Docker no se inicia

Docker no se inicia

Buenos días chicos, soy principiante con el Docker así que no sé mucho, pero necesito instalarlo. Tengo un alojamiento VPS en GoDaddy, instalé la ventana acoplable siguienteesta guíay cuando intento iniciar la ventana acoplable me sale el error:

El trabajo para docker.service falló porque el proceso de control finalizó con un código de error. Consulte "systemctl status docker.service" y "journalctl -xe" para obtener más detalles.

Al ejecutar systemctl status docker.serviceobtengo el siguiente resultado:

[root@ip-107-180-94-5 ~]# systemctl status docker.service -l
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
  Drop-In: /etc/systemd/system/docker.service.d
           └─godaddy.conf
   Active: failed (Result: start-limit) since Wed 2020-01-29 06:49:01 MST; 4min 1s ago
     Docs: https://docs.docker.com
  Process: 3708 ExecStartPost=/opt/godaddy/docker/configure-snat (code=exited, status=2)
  Process: 3571 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=0/SUCCESS)
 Main PID: 3571 (code=exited, status=0/SUCCESS)

Jan 29 06:48:59 ip-107-180-94-5.ip.secureserver.net systemd[1]: Failed to start Docker Application Container Engine.
Jan 29 06:48:59 ip-107-180-94-5.ip.secureserver.net systemd[1]: Unit docker.service entered failed state.
Jan 29 06:48:59 ip-107-180-94-5.ip.secureserver.net systemd[1]: docker.service failed.
Jan 29 06:49:01 ip-107-180-94-5.ip.secureserver.net systemd[1]: docker.service holdoff time over, scheduling restart.
Jan 29 06:49:01 ip-107-180-94-5.ip.secureserver.net systemd[1]: Stopped Docker Application Container Engine.
Jan 29 06:49:01 ip-107-180-94-5.ip.secureserver.net systemd[1]: start request repeated too quickly for docker.service
Jan 29 06:49:01 ip-107-180-94-5.ip.secureserver.net systemd[1]: Failed to start Docker Application Container Engine.
Jan 29 06:49:01 ip-107-180-94-5.ip.secureserver.net systemd[1]: Unit docker.service entered failed state.
Jan 29 06:49:01 ip-107-180-94-5.ip.secureserver.net systemd[1]: docker.service failed.

Al ejecutar journalctl -xeobtengo el siguiente resultado:

[root@ip-107-180-94-5 ~]# journalctl -xe-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit user-0.slice has finished starting up.--
-- The start-up result is done.Jan 29 07:10:01 ip-107-180-94-5.ip.secureserver.net systemd[1]: Started Session 11104 of user root.-- Subject: Unit session-11104.scope has finished start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel--
-- Unit session-11104.scope has finished starting up.
--
-- The start-up result is done.Jan 29 07:10:01 ip-107-180-94-5.ip.secureserver.net systemd[1]: Started Session 11105 of user root.
-- Subject: Unit session-11105.scope has finished start-up
-- Defined-By: systemd-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel---- Unit session-11105.scope has finished starting up.
--
-- The start-up result is done.
Jan 29 07:10:01 ip-107-180-94-5.ip.secureserver.net CROND[31560]: (root) CMD (/usr/local/cpanel/scripts/dcpumon-wr
Jan 29 07:10:01 ip-107-180-94-5.ip.secureserver.net CROND[31561]: (root) CMD (/usr/lib64/sa/sa1 1 1)

Seguí algunas publicaciones de personas con el mismo error y todo lo que hago funciona. Logré obtener otro resultado ejecutando dockerd --debug, se detiene en la siguiente línea y necesito cancelar el comando:

INFO[2020-01-29T07:14:39.129935890-07:00] API listen on /var/run/docker.sock

Después de eso, si lo ejecuto, systemctl start dockerse atasca sin dar respuesta y necesito cancelar el comando nuevamente, luego verifico el estado y systemctl status docker.service -lgenera el siguiente resultado:

● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
  Drop-In: /etc/systemd/system/docker.service.d
           └─godaddy.conf
   Active: activating (start-post) since Wed 2020-01-29 07:17:17 MST; 1min 39s ago
     Docs: https://docs.docker.com
 Main PID: 32176 (dockerd);         : 32313 (configure-snat)
    Tasks: 15
   Memory: 39.6M
   CGroup: /system.slice/docker.service
           ├─32176 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
           └─control
             ├─ 5261 sleep 0.1
             └─32313 /bin/bash /opt/godaddy/docker/configure-snat

Jan 29 07:18:56 ip-107-180-94-5.ip.secureserver.net configure-snat[32313]: Cannot connect to the Docker daemon atunix:///var/run/docker.sock. Is the docker daemon running?
Jan 29 07:18:56 ip-107-180-94-5.ip.secureserver.net configure-snat[32313]: waiting for docker bridge...
Jan 29 07:18:56 ip-107-180-94-5.ip.secureserver.net configure-snat[32313]: Cannot connect to the Docker daemon atunix:///var/run/docker.sock. Is the docker daemon running?
Jan 29 07:18:56 ip-107-180-94-5.ip.secureserver.net configure-snat[32313]: waiting for docker bridge...
Jan 29 07:18:56 ip-107-180-94-5.ip.secureserver.net configure-snat[32313]: Cannot connect to the Docker daemon atunix:///var/run/docker.sock. Is the docker daemon running?
Jan 29 07:18:56 ip-107-180-94-5.ip.secureserver.net configure-snat[32313]: waiting for docker bridge...
Jan 29 07:18:56 ip-107-180-94-5.ip.secureserver.net configure-snat[32313]: Cannot connect to the Docker daemon atunix:///var/run/docker.sock. Is the docker daemon running?
Jan 29 07:18:56 ip-107-180-94-5.ip.secureserver.net configure-snat[32313]: waiting for docker bridge...
Jan 29 07:18:56 ip-107-180-94-5.ip.secureserver.net configure-snat[32313]: Cannot connect to the Docker daemon atunix:///var/run/docker.sock. Is the docker daemon running?
Jan 29 07:18:57 ip-107-180-94-5.ip.secureserver.net configure-snat[32313]: waiting for docker bridge...

Siguiendo otros consejos ejecuté el dockerdcomando y generé el resultado:

WARN[2020-01-29T07:20:27.025438855-07:00] The "graph" config file option is deprecated. Please use "data-root" instead.
INFO[2020-01-29T07:20:27.025693705-07:00] Starting up
failed to start daemon: pid file found, ensure docker is not running or delete /var/run/docker.pid

Entonces elimino el archivo .pid y el resultado cambia a:

WARN[2020-01-29T07:22:44.060324431-07:00] The "graph" config file option is deprecated. Please use "data-root" instead.
INFO[2020-01-29T07:22:44.061145504-07:00] Starting up
INFO[2020-01-29T07:22:44.064401028-07:00] parsed scheme: "unix"                         module=grpc
INFO[2020-01-29T07:22:44.064684277-07:00] scheme "unix" not registered, fallback to default scheme  module=grpc
INFO[2020-01-29T07:22:44.064771804-07:00] ccResolverWrapper: sending update to cc: {[{unix:///run/containerd/containerd.sock 0  <nil>}] <nil>}  module=grpc
INFO[2020-01-29T07:22:44.064814177-07:00] ClientConn switching balancer to "pick_first"  module=grpc
INFO[2020-01-29T07:22:44.070245283-07:00] parsed scheme: "unix"                         module=grpc
INFO[2020-01-29T07:22:44.070333997-07:00] scheme "unix" not registered, fallback to default scheme  module=grpc
INFO[2020-01-29T07:22:44.070364847-07:00] ccResolverWrapper: sending update to cc: {[{unix:///run/containerd/containerd.sock 0  <nil>}] <nil>}  module=grpc
INFO[2020-01-29T07:22:44.070390331-07:00] ClientConn switching balancer to "pick_first"  module=grpc
WARN[2020-01-29T07:22:44.071893568-07:00] [graphdriver] WARNING: the overlay storage-driver is deprecated, and will be removed in a future release
failed to start daemon: error while opening volume store metadata database: timeout

Y después de eso no pude seguir con nada más, ya reinstalé el docker como 2 veces y todavía nada. ¿Alguien puede ayudarme? Estoy usando la distribución CentOS 7.

Respuesta1

Tuve el error similar. El problema estaba en /etc/systemd/system/docker.service.d/godaddy.conf, allí se encuentra el comando para ejecutar un script para configurar la red y iptables ExecStartPost=/opt/godaddy/docker/configure-snat:.

Y en ese archivo de script, exactamente estas 2 líneas fallaban en mi caso:

...
iptables -t nat -D POSTROUTING -s ${DOCKER_NETWORK} ! -o docker0 -j SNAT --to ${PUBLIC_IP}
iptables -t nat -I POSTROUTING -s ${DOCKER_NETWORK} ! -o docker0 -j SNAT --to ${PUBLIC_IP}

El problema fue con la variable ${PUBLIC_IP}que por alguna razón estaba vacía y el script generado terminó en --toolo cual es incorrecto porque --toorequiere un argumento. Entonces esto creó un error y mi ventana acoplable no pudo iniciarse.

Entonces el problema no estaba en la ventana acoplable en sí. Después de comentar esta línea: #ExecStartPost=/opt/godaddy/docker/configure-snaten /etc/systemd/system/docker.service.d/godaddy.conf. Problema resuelto. Docker se inició sin problemas, en mi caso.

Respuesta2

Elimine archivos de /var/lib/docker. y luego reinicie el servicio Docker. Haga una copia de seguridad de las imágenes, ya que al eliminar la carpeta se eliminarán los datos de la imagen.

información relacionada