Job for docker.service failed because the control process exited with error code. 由于控制进程以错误代码退出,docker.service 的工作失败。
Job for docker.service failed because the control process exited with error code. 由于控制进程以错误代码退出,docker.service 的工作失败。
我在RHEL 7上安装了Docker引擎,\n现在当我执行以下命令时:\n
service docker start
\n我得到以下错误:\n
docker.service 任务失败,因为控制进程退出并带有错误代码。请参阅“systemctl status docker.service”和“journalctl -xe”获取详细信息。
\n当我执行“systemctl status docker.service”和“journalctl -xe”时,\n我得到:\n
docker.service - Docker应用容器引擎 已加载:已加载(/usr/lib/systemd/system/docker.service;已禁用;供应商预设:已禁用) Drop-In:/etc/systemd/system/docker.service.d └─docker.conf 活动的:失败(结果:退出码)自2016年9月8日22:15:53 EDT以来;10秒前 文档:https://docs.docker.com 进程:13504 ExecStart=/usr/bin/docker daemon -H fd:// --mtu 1400 --exec-opt native.cgroupdriver=systemd(代码=已退出,状态=1/失败) 主PID:13504(代码=已退出,状态=1/失败) Sep 08 22:15:53 app-linux2.app-netapp.lab.com systemd[1]:正在启动Docker应用容器引擎... Sep 08 22:15:53 app-linux2.app-netapp.lab.com docker[13504]:time="2016-09-08T22:15:53.227074798-04:00" level=fatal msg="no sockets found via socket activation: make sure the service ...by systemd" Sep 08 22:15:53 app-linux2.app-netapp.lab.com systemd[1]:docker.service:主进程已退出,代码=已退出,状态=1/失败 Sep 08 22:15:53 app-linux2.app-netapp.lab.com systemd[1]:启动Docker应用容器引擎失败。 Sep 08 22:15:53 app-linux2.app-netapp.lab.com systemd[1]:docker.service进入失败状态。 Sep 08 22:15:53 app-linux2.app-netapp.lab.com systemd[1]:docker.service失败。
\n还有\n--\n
-- 启动结果已完成。 Sep 08 22:10:01 app-linux2.app-netapp.lab.com CROND[12753]:(root)CMD(/usr/lib64/sa/sa1 1 1) Sep 08 22:10:01 app-linux2.app-netapp.lab.com systemd[1]:正在启动用户root的会话58。 -- 主题:单元session-58.scope已开始启动 -- Defined-By:systemd -- Support:http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- 单元session-58.scope已开始启动。 Sep 08 22:10:53 app-linux2.app-netapp.lab.com polkitd[766]:已注册unix-process的身份验证代理:12878:2674931(系统总线名:1.173 [/usr/bin/pkttyagent --notify-fd 5 --fallback],ob Sep 08 22:10:53 app-linux2.app-netapp.lab.com systemd[1]:正在启动Docker应用容器引擎... -- 主题:单元docker.service已开始启动 -- Defined-By:systemd -- Support:http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- 单元docker.service已开始启动。 Sep 08 22:10:53 app-linux2.app-netapp.lab.com docker[12895]:time="2016-09-08T22:10:53.413304246-04:00" level=fatal msg="no sockets found via socket activation: make sure the service was started by Sep 08 22:10:53 app-linux2.app-netapp.lab.com systemd[1]:docker.service:主进程已退出,代码=已退出,状态=1/失败 Sep 08 22:10:53 app-linux2.app-netapp.lab.com systemd[1]:启动Docker应用容器引擎失败。 -- 主题:单元docker.service失败 -- Defined-By:systemd -- Support:http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- 单元docker.service失败。 -- -- 结果是失败的。 Sep 08 22:10:53 app-linux2.app-netapp.lab.com systemd[1]:docker.service进入失败状态。 Sep 08 22:10:53 app-linux2.app-netapp.lab.com systemd[1]:docker.service失败。 Sep 08 22:10:53 app-linux2.app-netapp.lab.com polkitd[766]:已注销unix-process的身份验证代理:12878:2674931(系统总线名:1.173,对象路径/org/freedesktop/PolicyKit1/Authent Sep 08 22:13:36 app-linux2.app-netapp.lab.com polkitd[766]:已注册unix-process的身份验证代理:13214:2691210(系统总线名:1.174 [/usr/bin/pkttyagent --notify-fd 5 --fallback],ob Sep 08 22:13:36 app-linux2.app-netapp.lab.com polkitd[766]:已注销unix-process的身份验证代理:13214:2691210(系统总线名:1.174,对象路径/org/freedesktop/PolicyKit1/Authent Sep 08 22:15:53 app-linux2.app-netapp.lab.com polkitd[766]:已注册unix-process的身份验证代理:13489:2704913(系统总线名:1.175 [/usr/bin/pkttyagent --notify-fd 5 --fallback],ob Sep 08 22:15:53 app-linux2.app-netapp.lab.com systemd[1]:正在启动Docker应用容器引擎... -- 主题:单元docker.service已开始启动 -- Defined-By:systemd -- Support:http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- 单元docker.service已开始启动。 Sep 08 22:15:53 app-linux2.app-netapp.lab.com docker[13504]:time="2016-09-08T22:15:53.227074798-04:00" level=fatal msg="no sockets found via socket activation: make sure the service was started by Sep 08 22:15:53 app-linux2.app-netapp.lab.com systemd[1]:docker.service:主进程已退出,代码=已退出,状态=1/失败 Sep 08 22:15:53 app-linux2.app-netapp.lab.com systemd[1]:启动Docker应用容器引擎失败。 -- 主题:单元docker.service已失败 -- Defined-By:systemd -- Support:http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- 单元docker.service已失败。 -- -- 结果是失败的。 Sep 08 22:15:53 app-linux2.app-netapp.lab.com systemd[1]:docker.service进入失败状态。 Sep 08 22:15:53 app-linux2.app-netapp.lab.com systemd[1]:docker.service失败。 Sep 08 22:15:53 app-linux2.app-netapp.lab.com polkitd[766]:已注销unix-process的身份验证代理:13489:2704913(系统总线名:1.175,对象路径/org/freedesktop/PolicyKit1/Authent 行3473-3523/3523(END)
\n我试图寻找解决方案,\n但没有找到任何。
解决“Job for docker.service failed because the control process exited with error code”问题,对于我来说,以下方法有效:
1. 在`/etc/docker/`目录下创建`daemon.json`文件
2. 将以下内容放入`daemon.json`文件中:
{
"exec-root": "/path/to/docker/run",
"storage-driver": "overlay",
"graph": "/path/to/docker/lib"
}
3. 然后尝试运行命令:`docker daemon`
4. 重启系统
5. 现在应该可以成功运行`docker run hello-world`命令了
Docker启动失败,错误代码为(Job for docker.service failed because the control process exited with error code)。出现这个问题的原因可能是Docker版本过旧,建议使用最新版本(目前是1.12)。以下是一个启动选项的示例(Debian 8,/etc/systemd/system/docker.service):
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network.target docker.socket
Requires=docker.socket
[Service]
Type=notify
ExecStart=/usr/bin/docker daemon -H fd:// --dns=10.240.116.7 --dns 8.8.8.8 --bip=172.17.42.1/24
MountFlags=slave
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target
另外,尝试以调试模式(-D)启动Docker,不使用systemd,就像启动普通程序一样。这将有助于找出守护进程为何无法启动的原因。
Docker服务失败的原因可能是在Docker的配置文件中出现了错误,导致服务启动时出现错误。可以通过检查操作系统日志文件中的警告或错误信息来确认问题所在。根据操作系统的不同,日志文件的位置也会有所不同。在Linux系统中,日志文件通常位于以下位置:
- /var/log/daemon.log
- /var/log/docker
- /var/log/messages
- /var/log/syslog
- /var/log/upstart/docker.log
可以使用以下一些有用的Linux控制台命令来查看Docker日志:
- sudo systemctl status docker.service
- sudo journalctl -fu docker.service
- cat /var/log/daemon.log | grep docker
- cat /var/log/messages | grep docker
如果你使用的是Windows系统,可以参考相关文章(链接在上文中提供)来找到日志文件。
更多详情可以参考提供的链接。