无论遇到什么docker启动不了的问题
就是
查看docker状态
sytemctl status docker
查看docker日志
sudo journalctl -u docker.service
查看docker三个配置文件:/etc/docker/daemon.json(如果存在) /etc/systemd/system/docker.service, /etc/systemd/system/docker.service.d/
重启
systemctl restart daemon-reload
重启docker
systemctl restart docker
好了进入我问题的痛苦解决过程
首先是查看docker状态
sytemctl status docker
问题
/etc/systemd/system/docker.service.d/override.conf:1: Invalid section header '[Service]ExecStart='
原因格式错误,到文件 /etc/systemd/system/docker.service.d/ 里的override.conf里看文件情况
cd /etc/systemd/system/docker.service.d/
中的配置是正确的。同时,检查 /etc/systemd/system/docker.service
和 /etc/systemd/system/docker.service.d/
目录下的任何覆盖文件,确保它们没有引入错误的配置。
一气之下删除了docker.service(这个文件得到/etc/systemd/system/这文件里后输入ls找)
cd /
cd /etc/systemd/system/
ls
vim docker.service
清空,
更新完该更新的
systemctl daemon-reload
systemctl restart docker
然后
又出错了
Failed to restart docker.service: Unit docker.service is masked." 表示 Docker 服务单元(unit)已被系统标记为“masked”。在 systemd 中,当一个服务单元被标记为 masked 时,它就不能被启动,因为 systemd 实际上已经禁用了这个单元文件。
解决
-
取消屏蔽 Docker 服务: 使用
systemctl unmask
命令来取消对 Docker 服务的屏蔽。sudo systemctl unmask docker.service
这个命令会创建一个到 Docker 服务单元文件的符号链接,允许 systemd 管理它。
-
尝试重新启动 Docker 服务: 一旦服务被取消屏蔽,您就可以尝试重新启动 Docker 服务了。
sudo systemctl restart docker.service
又又又出错了
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
不知道怎么搞了,索性直接把docker.service的内容全删了
vim docker.service
把docker.service.d下面的文件全删了
rm -f 文件名
然后
sudo systemctl unmask docker.service
sudo systemctl restart docker.service
没想到可以了,也是山重水复疑无路,柳暗花明又一村。
Cheer on
学会静下心下来一步一步的发现错误,纠正错误恐怕是最好的姿态。人生从来就是以失败为主题,所有你能做的只有不畏惧失败。希望程序不出bug,新手配置一些东西的时候可以一路顺风,那都是不切实际的幻想;遇到困难就头大,就想逃,就思绪混乱,我想大部分人都有这种想法,只是有些人只是想,但是会丢掉这种不好的想法,而有些人却真正去逃避了;如果你曾经逃避了,那现在你能做到不去逃避了吗,什么时候都来得及,但是最好就是现在。
--------雄关漫道真如铁,而今迈步从头越