Docker容器未运行

时间:2016-10-21 02:24:40

标签: docker

我创建了一个docker镜像,它是一个基于centos图像的python脚本。此映像正在主机系统中运行。然后我用tar.gz格式转换了那个图像。之后,当我将tar.gz文件导入docker host(在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命令适用于我系统中的所有其他图像。我尝试了几乎所有的方法,但除了这个错误之外没有输出。

3 个答案:

答案 0 :(得分:2)

docker run -it image_name /bin/sh适合我! (Docker图像,像Alpine一样,没有/bin/bash)。

答案 1 :(得分:1)

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

我通过运行:

清除了所有缓存的容器和图像
docker ps -qa|xargs docker rm -f
docker images -q|xargs docker rmi

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

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

答案 2 :(得分:0)

我遇到了同样的问题,在按照本文中描述的步骤后,它得到了解决... https://www.jamescoyle.net/how-to/1512-export-and-import-a-docker-image-between-nodes

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

希望这会有所帮助......