docker 升级后或者重装后,启动容器提示:Error response from daemon: Unknown runtime specified docker-runc

作者: gavin 分类: Docker 发布时间: 2021-02-12 09:32

之前安装的版本是docker 1.3,并运行了容器jenkins

现在把docker升级版本为docker-ce 19.03

再使用docker ps发现之前的jenkins容器已经退出了

启动容器:

docker start jenkins 

报错提示:Error response from daemon: Unknown runtime specified docker-runc

可能是因为从不兼容的版本升级了docker

解决方法:

更改/var/lib/docker/containers目录中的文件参数,把docker-runc替换为runc

命令:

grep -rl 'docker-runc' /var/lib/docker/containers/ | xargs sed -i 's/docker-runc/runc/g'

注:grep -rl:递归搜索目录和子目录,只列出含有匹配的文本行的文件名,而不显示具体的匹配内容

       xargs:衔接执行之前得到的值

      总体意思是把/var/lib/docker/containers中含有‘docker-runc’的文件搜索出来,并把‘docker-runc’字符为runc

重新启动docker

systemctl restart docker

再启动失败的容器问题已解决