今天在对一台服务器(docker相关的业务服务器)进行OS补丁时,默认使用的 yum update -y 对所有的安装包进行了升级
升级完成后,让应用方检查确认应用及功能是否一切正常,如果不正常,严重影响了业务,将使用升级前的备份进行回滚
然后就听到应用反馈,升级os包括docker相关的软件后,现次创建容器时报如下错误:
执行的命令为:docker run -it xxxxxx.dkr.ecr.ap-northeast-1.amazonaws.com/make/cn-staging/backend:latest /bin/bash
docker: Error response from daemon: runtime "io.containerd.runc.v2" binary not installed "containerd-shim-runc-v2": file does not exist: unknown.
ERRO[0000] error waiting for container: context canceled
看到报错信息,尤其是"containerd-shim-runc-v2": file does not exist: unknown.提示还是比较明显的
那应该就是升级后的版本是需要containerd-shim-runc-v2 这个文件,然后查阅资料及分析后,得出
刚好 containerd 这个软件包提供了,/usr/bin/containerd-shim-runc-v1和v2文件的,而此前系统中是没有containerd这个软件
于是准备安装 containerd 后,再让进行测试:
[root@qq-5201351 ~]# yum install containerd -y Loaded plugins: extras_suggestions, langpacks, priorities, update-motd .........省略部分输出............ Installed: containerd.x86_64 0:1.6.6-1.amzn2 Dependency Installed: runc.x86_64 0:1.1.3-1.amzn2 Complete! [root@qq-5201351 ~]# cd /usr/bin/ [root@qq-5201351 bin]# ls |grep containerd containerd containerd-shim containerd-shim-runc-v1 containerd-shim-runc-v2 docker-containerd docker-containerd-shim [root@qq-5201351 bin]#
最后再让应用测试,功能一切正常
因为都在处理问题,也有可能是他们的操作解决了这个问题,看总体看来,应该是与补充安装了上面的软件有关
尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/16646549.html
标签:bin,daemon,shim,containerd,v2,runc,报错,docker From: https://www.cnblogs.com/5201351/p/16646549.html