【问题标题】:Docker runtime error after tar commandtar 命令后的 Docker 运行时错误
【发布时间】:2018-12-11 21:17:17
【问题描述】:

我正在使用wget 检索tar.gz 文件并使用tar -xzf 将其解压缩。如果我从正在运行的容器中运行tar 命令,它会成功解包并存储为init,然后我可以在其中使用./init 启动服务。

我遇到的问题是,当我在Dockerfile 中使用来自RUN 指令的相同tar 命令时,当docker build .RUN tar -xzf 命令。

这是我得到的错误:

OCI runtime create failed: container_linux.go:348: starting container process caused "exec: \"/bin/sh\": stat /bin/sh: no such file or directory": unknown

这是我用于测试的 Dockerfile:

FROM amazonlinux:2
RUN yum install -y wget tar gzip
wget https://github.com/just-containers/s6-overlay/releases/download/v1.19.1.1/s6-overlay-amd64.tar.gz
RUN tar -xzf s6-overlay-amd64.tar.gz
RUN echo "test"

注意:如果我将RUN tar -xzf 设置为Dockerfile 中的最后一条指令,它将成功构建,但尝试在容器中运行映像会导致同样的错误。


更多故障排除信息:

在容器内,我运行 which gzip 以确认 gzip 是从正确的路径 (/usr/bin/gzip) 使用的,我还运行了 file https://github.com/just-containers/s6-overlay/releases/download/v1.19.1.1/s6-overlay-amd64.tar.gz,它在最后产生了以下输出:

Length: 1713081 (1.6M) [application/octet-stream]

据我所知,octet-stream 仅表示该文件是二进制文件,扩展名应该足以告诉我这是一个gzip 文件。

不管它的价值是什么,我知道这个tar.gz 文件正在被成功解压到另一个工作的Dockerfile 中构建FROM alpine:3.6:https://hub.docker.com/r/webcenter/activemq/~/dockerfile/

我已尝试在引用的Dockerfile 中使用tar 命令,但总是以同样的错误告终。

【问题讨论】:

  • 引用的 docker 文件将 curl 的输出直接通过管道传输到 tar 中,而无需创建临时文件。你试过方法吗?
  • @MisterSmith 是的,它可以工作,但是之后的任何RUN 命令在构建时都会出现以下错误:OCI runtime create failed: container_linux.go:348: starting container process caused "exec: \"/bin/sh\": stat /bin/sh: no such file or directory": unknown。我将把这个添加到问题中以澄清我已经尝试过原始方法。
  • tar 是一个实际的二进制文件还是指向其他东西的包装脚本?错误似乎暗示脚本正在启动
  • @MisterSmith 我同意这似乎是错误所暗示的。如何确定它是二进制文件还是指向其他内容的包装脚本? wget 返回[application/octet-stream] 的事实意味着它是一个二进制文件,不是吗?
  • 在典型的 Linux 开发人员机器上,file 命令通常会告诉您(或猜测)某个文件是什么类型的文件。您可能在容器中没有此工具,因为它更像是一种开发人员工具。 curl为你解压文件并非不可能。

标签: linux docker amazon-ec2 gzip tar


【解决方案1】:

问题最终不是Docker 问题,而是我试图解压缩的tar.gz 文件的问题。找到多个解决方法here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-02
    • 2021-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-09
    • 2021-01-13
    相关资源
    最近更新 更多