【发布时间】:2018-03-04 14:59:27
【问题描述】:
我正在尝试构建以下 Dockerfile,但它在 RUN ocp-indent --help 上一直失败,说 ocp-indent: not found The command '/bin/sh -c ocp-indent --help' returned a non-zero code: 127
FROM ocaml/opam
WORKDIR /workdir
RUN opam init --auto-setup
RUN opam install --yes ocp-indent
RUN ocp-indent --help
ENTRYPOINT ["ocp-indent"]
CMD ["--help"]
我通过docker run -it <image id> bash -il 猛击在它之前运行的图像并运行ocp-indent --help,它运行良好。不知道为什么会失败,想法?
【问题讨论】:
-
我不知道如果
run有效,为什么它是必要的,但您是否尝试过指定ocp-indent的完整路径? -
怎么样?
Run <path to ocp-indent.exe>? -
是的。可能在
/bin或/usr/bin。 -
它实际上在
home/opam/.opam/4.04.2/bin中,它也存在于echo $PATH中。让我试着把它放在 Dockerfile 中看看会发生什么。 -
好的,但这没有意义,我也不能可靠地使用它,因为 ocaml/opam 会更新它们的版本,使 4.04.2 不起作用。但从故障排除的角度来看,这会有所帮助。知道为什么 Run 会在那里失败吗?
标签: docker dockerfile