如何在Dockerfile RUN中使用管道(ioredirection)?

时间:2015-05-25 15:02:52

标签: docker dockerfile

Dockerfile中的以下行不起作用:

RUN git archive master | tar -x -C /path

错误讯息:

fatal: Not a valid object name
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors

如何解决这个问题?

3 个答案:

答案 0 :(得分:6)

您可以尝试sh -c命令

RUN sh -c 'git archive master | tar -x -C /path'

如果没有,您可以在脚本中包含该命令,复制脚本并运行它。

答案 1 :(得分:2)

以下变体如何:git archive master | tar xf - -C /path

答案 2 :(得分:0)

看起来问题实际上是您的git存储库(或您的RUN正在执行的目录):

fatal: Not a valid object name

此错误来自git,并表明没有名为master的分支。