相当于 build-arg 的 --env-file 吗?

8 docker

我正在使用多个构建参数构建 Docker 映像,并且想知道是否可以将它们作为docker build文件传递,以同样的方式--env-file可以传递到docker run. env 文件将被docker run自动解析,并且变量在容器中可用。

是否可以以相同的方式指定构建参数文件?

shi*_*zhz 11

至少目前没有这样的选择。但是,如果您有太多构建参数并希望将其保存在文件中,则可以按如下方式将其存档:

  1. 将以下 shell 保存到buildargs.sh,使其可执行并将其放入您的PATH

    #!/bin/bash
    awk '{ sub ("\\\\$", " "); printf " --build-arg %s", $0  } END { print ""  }' $@
    
    Run Code Online (Sandbox Code Playgroud)
  2. 用类似的方式构建你的形象argfile

    docker build $(buildargs.sh argfile) -t your_image .
    
    Run Code Online (Sandbox Code Playgroud)