Docker ARG或ENV无法在Dockerfile中按预期工作

时间:2019-03-18 08:17:55

标签: docker dockerfile

我将Docker Toolbox用于Windows(出于兼容性问题),并且在Dockerfile中指定了ARG,以便在使用--build-arg命令构建映像时可以使用它。在dockerfile里面,我还有一些COPY命令,在那里我想使用我的变量,但是当我运行docker build --build-arg VERSION_APP=something时。它不翻译变量。我已经使用过$VERSION_APP${VERSION_APP}%VERSION_APP%

FROM alpine
MAINTAINER Marinos

ARG VERSION_APP


RUN apk update && apk add dos2unix

COPY script.sh /home/script.sh
RUN chmod a+x /home/script.sh

RUN dos2unix /home/script.sh 

RUN sh /home/script.sh 

COPY installation.txt /home/Desktop/${VERSION_APP}

更新

似乎您应该将整个路径传递给您使用的变量,这就是我如何使其工作的方式。

1 个答案:

答案 0 :(得分:0)

如果您实际上使用下面的命令,则该命令将不起作用,因为名为document.getElementById('example').click(); 的参数

VERSION_APP

所以命令应该是

docker build --build-arg myVar=something

在Dockerfile中,它应该为docker build --build-arg VERSION_APP=something ,您可能还需要使用如下所示的ENV:

%VERSION_APP%