Docker启动失败:Job for docker.service canceled. 解决

环境

  • Ubuntu 18.04
  • Docker Server Version: 20.10.1

描述

VMware中的Ubuntu 18.04死机后重启Docker失败

执行docker ps,报错

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

执行systemctl start docker,报错

Job for docker.service canceled.

执行journalctl -xe,报错:

panic: invalid page type: 19: 10

解决

流程如下:

  • 备份数据

    mv /var/lib/docker /var/lib/docker-bak
    mv /var/lib/containerd /var/lib/containerd
    
  • 删除不完成的数据,重启docker

    rm -rf /var/lib/docker
    rm -rf /var/lib/containerd
    systemctl restart docker
    

至此,docker可正常使用。要是生产环境中的docker,出现该问题,不建议这样子暴力解决。

实在其他没办法的情况下,可按以下的方法,rm前做好数据备份,尽可能恢复数据

  • 恢复原来镜像相关数据信息,以及存储的镜像
    mv /var/lib/docker/image /var/lib/docker/image-bak
    mv /var/lib/docker-bak/image /var/lib/docker/image
    
  • 恢复原来运行容器的相关信息
    mv /var/lib/docker/containers /var/lib/docker/containers-bak
    mv /var/lib/docker-bak/containers /var/lib/docker/containers
    mv /var/lib/docker/volumes /var/lib/docker/volumes-bak
    mv /var/lib/docker-bak/volumes /var/lib/docker/volumes
    systemctl restart docker
    

2020最后一天,开发机还要给自己挖坑,以此记录来结束中规中矩的一年

你可能感兴趣的:(docker)