无法启动docker | “Job for docker.service failed because the control process exited with error code“
慵懒的小林 2024-06-23 16:07:02 阅读 77
问题描述
docker无法启动,报错:"Job for docker.service failed because the control process exited with error code"
这个问题网上有很多解决方案,但是试了很多没有解决,遂记下可以解决自己问题的方案以供参考。
在解决过程中出现过多种报错:
failed to start daemon, ensure docker is not running or delete /var/run/docker.pid: process with PID 24464 is still running
failed to start daemon: error while opening volume store metadata database (/var/lib/docker/volumes/metadata.db): timeout
原因分析:
问题分析:docker是由守护进程(daemon)和客户端组成的,一般运行报错带有
daemon
的时候,可能是守护进程出了问题,或者修改了守护进程的配置文件。同样的,启动不了也可能是守护进程出了问题。
解决方案:
再尝试了各种配置没有问题后,且docker确实已经停止运行了,那就只好用
dockerd
来排查问题了。因为要启动docker,一般需要先启动docker的守护进程。
原因:
dockerd
就是守护进程,负责管理 Docker 容器、镜像、网络和存储等核心功能。当你在命令行中使用docker
命令时,实际上是在与dockerd
守护进程进行通信。
实践开始:
#输入命令:dockerd#报错:INFO[2024-05-08T18:07:11.413186406+08:00] Starting up failed to start daemon, ensure docker is not running or delete /var/run/docker.pid: process with PID 24464 is still running#根据提示,确保docker关闭了,删除这个文件rm /var/run/docker.pid#再检查dockerddockerd# 如果没有报错,就可以去启动docker了,我还有以下的报错:INFO[2024-05-08T20:40:06.361088244+08:00] Starting up failed to start daemon: error while opening volume store metadata database (/var/lib/docker/volumes/metadata.db): timeout# 我是通过输入下面的命令解决的ps axf | grep docker | grep -v grep | awk '{print "kill -9 " $1}' | sudo sh# 再次检查dockerd# 没有报错了 `crtl + c` 或者 `crtl + z`退出# 重启dockersystemctl start docker
如果后续使用docker不能正常运行,一使用docker命令就报错ERROR: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
那请看另一篇文章docker无法使用,报错无法连接守护进程。
下一篇: 【Windows11通过移动硬盘安装Ubuntu20.04双系统】保姆级教程 | ventoy | BIOS | Ubuntu20.04 | 全过程图文by.Akaxi
本文标签
无法启动docker | “Job for docker.service failed because the control process exited with error code“
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。