Docker升级后容器无法启动的解决方法

错误背景及原因

Docker升级后在启动原较低版本创建的容器时会产生以下错误:

Error response from daemon: Unknown runtime specified docker-runc Error: failed to start containers: 4asdffvcv432hg

实际上是较低版本Docker使用‘docker-runc’语句,而新版本使用‘runc’语句。

解决方法

通过如下语句将文件中的语句替换为‘runc’,并将docker重启后原容器便可正常启动。

grep -rl 'docker-runc' /var/lib/docker/containers/ | xargs sed -i 's/docker-runc/runc/g'
#更改/var/lib/docker/containers目录中的文件参数,将docker-runc替换为runc
systemctl restart docker 
#重启docker,此步骤不可缺少

其他:Docker重装升级

#卸载当前Docker
yum erase docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
#下载安装最新版Docker
yum install docker-ce -y

留下评论

您的电子邮箱地址不会被公开。 必填项已用*标注