Docker容器没有运行

我创build了一个基于一个centos图像的python脚本的docker镜像。 该图像在主机系统中工作。 然后我把它转换成tar.gz格式。 之后,当我将tar.gz文件导入Docker主机(在Ubuntu系统中)时,它正确完成,Docker镜像列表显示了其中列出的镜像。 然后我尝试使用以下命令以交互模式运行容器:

$docker run -it image_name /bin/bash 

它会抛出以下错误:

 docker: Error response from daemon: invalid header field value "oci runtime error: container_linux.go:247: starting container process caused \"exec: \\\"/bin/bash\\\": stat /bin/bash: no such file or directory\"\n". 

虽然docker run -it image_name /bin/bash命令适用于我系统中的所有其他映像。 我尝试了几乎所有的方法,但除了这个错误之外没有任何产出。

docker run -it image_name /bin/sh为我工作! (像Alpine这样的Docker镜像没有/bin/bash )。

我有同样的问题,并得到解决,按照本文所述的步骤后… https://www.jamescoyle.net/how-to/1512-export-and-import-a-docker-image-节点之间,

而不是将docker image(I)保存为.tar并导入,我们需要将基于图像(I)的退出容器提交为新图像(N)。 然后将新提交的图像(N)保存为.tar文件,以便导入到新的环境中。

希望这可以帮助…

在更新Docker for Windows后,我遇到了同样的问题。 它似乎损坏了一些图像层。

我通过运行清除了所有caching的容器和图像:

 docker ps -qa|xargs docker rm -f docker images -q|xargs docker rmi 

最后一个命令返回了一些错误(一些返回的图像不再存在)。

然后我重新启动服务,一切都再次运行。