docker:来自守护进程的错误响应:无法创建垫片:OCI 运行时创建失败

docker:来自守护进程的错误响应:无法创建垫片:OCI 运行时创建失败

我在运行官方 docker 映像(例如 OpenJDK 甚至 hello-world)时遇到了此错误:

# docker run hello-world
docker: Error response from daemon: failed to create shim: OCI runtime create failed:
container_linux.go:380: starting container process caused: process_linux.go:402:
getting the final child's pid from pipe caused: EOF: unknown.

我的操作系统是:

# rpm --query centos-release
centos-release-7-5.1804.4.el7.centos.x86_64

和我的 Docker 版本:

# docker -v
Docker version 20.10.14, build a224086

出现此错误是因为没有更改或更新。我该如何调查这个问题的原因?

答案1

CentOS 7 默认内核 (3.10) 对于最新的 Docker 版本存在一些问题。需要更新到内核版本5+。

https://forums.docker.com/t/centos7-docker-hello-world-fails/68941/4

我使用的是CentOS 7.6,但内核版本是3.10。因此,在更新 docker-ce 版本 Docker 版本 18.09.2,内部版本 6247962 后,我看到了相同的消息。为了解决这个问题,我将内核版本更新到 4.20,然后 docker 运行良好。我按照本页中的 CentOS 内核更新流程进行操作。

CentOS 内核更新的有用链接:

相关内容