Dockerfile(如果带有外部参数的其他条件)

我有dockerfile

FROM centos:7

ENV foo=42

然后我建立它

docker build -t my_docker .

并运行它。

docker run -it -d  my_docker

是否可以从命令行传递参数并将其与Dockerfile中的其他参数一起使用?我的意思是

FROM centos:7

if (my_arg==42)

{ENV=TRUE}

else:

{ENV=FALSE}

并以此参数构建。

 docker build -t my_docker . --my_arg=42

回答:

看起来可能不太干净,但是您可以按照以下方式使用Dockerfile:

FROM centos:7

ARG arg

RUN if [ "x$arg" = "x" ] ; then echo Argument not provided ; else echo Argument is $arg ; fi

然后将图像构建为:

docker build -t my_docker . --build-arg arg=45

要么

docker build -t my_docker .

以上是 Dockerfile(如果带有外部参数的其他条件) 的全部内容, 来源链接: utcz.com/qa/419627.html

回到顶部