1. 问题描述
执行systemctl daemon-reload
与systemctl restart docker
命令后,发现docker中有的应用无法启动,并显示出Exit(255)的错误提示。
重新执行docker start 容器id
后发现返回,Error response from daemon: task xxx
的错误。
2. 问题解决
由于容器中包含文件、数据、配置等内容,无法直接删除并新建一个容器,而且当前系统中运行这其他服务,也无法重启,故尝试排除启动容器时所产生的报错。
使用ps aux
查询所有进程发现,存在如下进程:
root 136141 0.3 0.0 111828 9720 ? Sl 17:56 0:00 /usr/bin/containerd-shim-runc-v2 -namespace moby -id 40c463664dfc9ac7ea3f73a1179af93c1528926a204217bc6ba6a753b5ce3bce -address /run/containerd/containerd.sock
该进程的id,同容器id相同,怀疑因为冲突,故无法正常启动。
使用kill -9
强行杀死该进程后,再使用docker start
,容器正常启动,问题解决。