Docker构建失败,找不到命令

时间:2018-09-10 16:10:34

标签: docker dockerfile rhel6

我的Dockerfile如下:

  FROM registry.access.redhat.com/rhel6.7
  USER root
  MAINTAINER zaman L
  RUN mkdir /apps
  COPY httpd-2.4.34.tar.bz2 /tmp
  RUN /usr/bin/tar xjvf /tmp/httpd-2.4.34.tar.bz2 -C /apps
  VOLUME /tmp
  VOLUME /apps

但是docker build失败并出现以下错误:

  `Step 7 : RUN /usr/bin/tar xjvf /tmp/httpd-2.4.34.tar.bz2 -C /apps
   ---> Running in 541bdd63aac6
  /bin/sh: /usr/bin/tar: No such file or directory
  The command '/bin/sh -c /usr/bin/tar xjvf /tmp/httpd-2.4.34.tar.bz2 -C /apps' returned a non-zero code: 127`

我该如何解决?

1 个答案:

答案 0 :(得分:0)

失败,因为无法在tar中找到您的/usr/bin/tar可执行文件。

您可以做的几件事:

  • /usr/bin/tar替换为tar,如评论中所述。
  • 运行which tar来查看tar可执行文件所在的位置,并将/usr/bin/tar替换为该命令的输出。

这两种方法中的任何一种都可以工作-第一种方法更通用(即,如果tar可执行文件以后再出现其他地方,则不会中断),但是第二种方法如果{在您的tar搜索中可以找到{1}}。