发布网友 发布时间:2023-09-03 23:48
共1个回答
热心网友 时间:2024-03-13 01:03
这是因为安装了蓝灯或者其他类似软件的原因。
你把蓝灯或者类似软件关闭了就不会出现这样的情况了。
现象描述
docker run -d centos:v1 /bin/bash创建容器或者docker exec -it container_name bash进入容器,都会报错“usrbindocker-current Error response from daemon:shim error.context deadline exceeded.”,docker ps、docker stats、docker info等命令均可用
基础环境
物理机操作系统:CentOS Linux release 7.3.1611 (Core)
内核版本:3.10.0-693.el7.x86_64;该内核版本已修复单机最多跑100个容器(否则触发xfs文件系统bug导致机器自动重启)的bug
问题分析
日志内容docker的日志里包含大量的error
谷歌搜索谷歌搜索“shim error: context deadline exceeded”,查到有人遇到相关问题,但是原因和解决办法没有找到,有的说是docker 1.12版本的一个bug,但是看样子文中的这个bug跟当前遇到的问题没啥关系。
尝试解决docker exec进程
怀疑使用了大量的“docker exec -it containerid bash”命令后没有正确的退出容器,导致过多的“docker exec”进程影响了docker run和docker exec命令的使用,所以kill掉了所有的“docker exec”进程。问题没有解决。
然后把这些Exited状态的容器删掉,docker run和docker exec命令恢复,问题解决。
现怀疑是过多的“Exited状态”的容器导致问题的出现。
因为是测试的宿主机,所以难免会试验性的建一些可能根本起不来的容器,起不来的话就变成“Exited”状态了。