解决Linux docker启动不了的问题

image.png

通过上面的日志可以看出,由于chmod /var/lib/docker: read-only file system ,/var/lib/docker 为只读权限,每次都启动失败,启动失败太多次,docker就停止启动了(start request repeated too quickly for docker.service)于是执行(root用户):mount -o remount rw /。
再次启动:systemctl start docker.service,嗯 再一次报错了。。。。。


image.png

这次是由于failed to start daemon: failed to dial "/run/containerd/containerd.sock": unknown service containerd.services.namespaces.v1.Namespaces: not implemented,启动失败次数太多导致停止启动,这个地方试了很多办法都没能搞定。。。终于在Docker daemon and Containerd dockerd out of sync in 18.09 #421 这个issue中看到了这个方法,先将containerd停掉,再启动(发现直接restart不管用,):

systemctl stop containerd
systemctl start containerd

#启动docker
systemctl start docker.service

总结
Linux中排查docker启动过程,可以通过如下思路:

#查看docker的状态
sudo docker info 
#启动正常输出client 和 server的信息

#通用查看docker状态的方式
systemctl status docker.service


#启动失败 查看docker的日志,
journalctl -u docker.service

#根据启动失败日志分析原因,如果是文件权限相关,则修改权限

转载链接http://www.huangxiutao.cn/fixed-docker-start-failed-on-linux.html

你可能感兴趣的:(解决Linux docker启动不了的问题)