错误背景及原因
Docker升级后在启动原较低版本创建的容器时会产生以下错误:
Error response from daemon: Unknown runtime specified docker-runcError: 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