Error response from daemon: OCI runtime create failed: container_linux.go:319: getting the final chi

Ubuntu 20.04LTS搭建docker出错: docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:319: getting the final child's pid from pipe caused \"EOF\"": unknown.

  • docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:319: getting the final child's pid from pipe caused \"EOF\"": unknown.

docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused “process_linux.go:319: getting the final child’s pid from pipe caused “EOF””: unknown.)

docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused “process_linux.go:319: getting the final child’s pid from pipe caused “EOF””: unknown.

这个问题我也是花费了很长时间才解决,网上并没有关于这方面的问题的解决办法,我通过从网上查看各种文档了解的一点点的蛛丝马迹,然后有了猜想是不是版本或者内核的原因,然后与其他成功的同学进行了对比,果然是内核不一样,但是是不是不一样的内核就不能支持呢?我只好通过升级内核验证。因为这个是基于Windows的Ubuntu系统,与正常情况下的Ubuntu系统内核不完全相同,于是采用网上普遍的教程升级内核是无法完成的,于是我就从Microsoft官网上找到了一篇关于手动升级内核的办法(WSL 2 will be generally available in Windows 10, version 2004 | Windows Command Line (microsoft.com))
正常情况下微软公司会推送更新,但是我的电脑还没有收到,只好进行手动更新。
① 下载wsl_update.msi的更新工具
https://docs.microsoft.com/zh-cn/windows/wsl/wsl2-kernel
② 将WSL 2 设置成为默认的版本
在命令提示符中输入:

$ wsl –l –v #查看现有的子系统
$ wsl --set-version <Distro>2,  wsl --set-default-version 2     #Distro 即为想升级的从上面命令中查到的系统名称
原先的系统内核为4.4.0升级时候如下:

原先的系统内核为4.4.0升级时候如下:在这里插入图片描述

再次尝试启动docker run,果然成功了。

你可能感兴趣的:(docker,docker,ubuntu)