Docker OCI运行时创建失败:container_linux.go:349:导致启动容器进程

时间:2020-03-26 19:57:19

标签: linux docker

我从事一个项目已经快一年了,这个项目已经在Docker中工作了。今天,我注意到整个文件系统的权限更改为777(所有文件均为“ -rwxrwxrwx”)。我不知道为什么会发生所有这些事情,所以我想修复它。

我运行了两个Bash命令:

find ./ -type -d exec chmod 755 {} \;
find ./ -type -f exec chmod 644 {} \;

此后,我想查看结果,然后运行此命令ls -l,然后看到一条消息Permission denied,这是可能发生的最坏的情况。我无法运行单个命令,因此决定退出容器。之后,噩梦开始了。现在,当我尝试再次启动容器时,出现以下错误

Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "exec: \"bash\": executable file not found in $PATH": unknown
Error: failed to start containers:

我不想考虑最坏的情况,因为我承受不起丢掉这个容器的麻烦,我真的很需要它。我的操作系统Ubuntu 18.04。

4 个答案:

答案 0 :(得分:8)

在入口点添加“ bash”对我有用:

ENTRYPOINT ["bash","entrypoint.prod.sh"]

答案 1 :(得分:2)

首先检查服务状态: $systemctl status docker

尝试重新启动: $systemctl restart docker

我遇到了同样的问题,我的解决方案是更精确地更新单位文件/etc/systemd/system/docker.service$systemctl edit docker.service),我从单位文件中删除了MountFlags=slave,然后删除了{{ 1}}。

答案 2 :(得分:1)

就我而言,要解决该错误消息,我还必须启用Windows的Docker桌面与WSL2上运行的Ubuntu发行版之间的集成。我在Docker Desktop之后安装了发行版 ,却忘记了这一步。

enter image description here

答案 3 :(得分:0)

在包含 Docker 更新的 Fedora 34 上执行 dnf update 后出现此错误。

降级 containerd.io 对我有用。

sudo dnf downgrade containerd.io