【问题标题】:Docker daemon no startDocker 守护进程没有启动
【发布时间】:2016-08-18 21:27:27
【问题描述】:

我正在尝试启动 Docker 守护进程:

sudo systemctl start docker

但是什么都没有发生,光标只是闪烁,过程永远不会结束。

昨天它工作正常:(

sudo journalctl -fu docker

ago 18 16:05:24 host docker[1602]: time="2016-08-18T16:05:24.467635627-05:00" level=info msg="New containerd process, pid: 1609\n"
ago 18 16:05:24 host docker[1602]: time="2016-08-18T16:05:24.482107319-05:00" level=fatal msg="bad listen address format /var/run/docker/libcontainerd/docker-containerd.sock, expected proto://address"
ago 18 16:05:30 host docker[1602]: time="2016-08-18T16:05:30.470570243-05:00" level=info msg="New containerd process, pid: 1620\n"
ago 18 16:05:30 host docker[1602]: time="2016-08-18T16:05:30.491495106-05:00" level=fatal msg="bad listen address format /var/run/docker/libcontainerd/docker-containerd.sock, expected proto://address"
ago 18 16:08:06 host systemd[1]: Stopped Docker Application Container Engine.
-- Reboot --
ago 18 16:16:52 host systemd[1]: Starting Docker Application Container Engine...
ago 18 16:16:54 host docker[2294]: time="2016-08-18T16:16:54.360878396-05:00" level=info msg="New containerd process, pid: 2327\n"
ago 18 16:16:54 host docker[2294]: time="2016-08-18T16:16:54.686503187-05:00" level=fatal msg="bad listen address format /var/run/docker/libcontainerd/docker-containerd.sock, expected proto://address"
ago 18 16:17:00 host docker[2294]: time="2016-08-18T16:17:00.664023288-05:00" level=info msg="New containerd process, pid: 2368\n"
ago 18 16:17:00 host docker[2294]: time="2016-08-18T16:17:00.67708602-05:00" level=fatal msg="bad listen address format /var/run/docker/libcontainerd/docker-containerd.sock, expected proto://address"

【问题讨论】:

  • sudo journalctl -fu docker
  • 看起来 docker 重新启动了,而您的启动 CLI 只是没有给您提示。您是否尝试过docker info 以查看是否可以连接?
  • @BMitch 这是解决方案bbs.archlinux.org/viewtopic.php?id=216046 谢谢

标签: docker systemd


【解决方案1】:

systemd 的一个有趣的事情是,如果它认为一个守护进程正在运行,那么 start 命令什么也不做。

我必须执行以下操作以确保我干净地重新启动某些守护程序:

sudo systemctl stop service-name

# wait a little if the service is slow to stop like the Cassandra database

sudo systemctl start service-name

这对我来说适用于各种服务。

了解服务是否正在运行的一种方法是检查状态,如下所示:

systemctl status service-name

【讨论】:

    最近更新 更多