且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

手把手教您设置 Docker 构建中的 ARG 变量

更新时间:2022-05-19 07:10:48

手把手教您设置 Docker 构建中的 ARG 变量

出品丨Docker公司(ID:docker-cn)
编译丨小东
每周一、三、五,与您不见不散!


ARG 即“构建时变量”可使用 docker build 命令“build-arg=flag”将变量传递给构建器。

使用全新的 Docker 引擎 18.09支持一个新的后端 BuildKit 构建工具包来执行您的构建。

您可以通过在 CLI 命令行界面上设置以下环境变量来切换到这个后端:

DOCKER_BUILDKIT=1

使用这个新的后端,Docker 预定义了一组 ARG 变量,其中包含了有关执行构建的节点平台(构建平台)和生成镜像(目标平台)的相关信息。

自动设置以下 ARG 变量:

手把手教您设置 Docker 构建中的 ARG 变量

这些参数在全局范围内定义,因此在构建阶段或 RUN 命令中不会自动提供。要在构建阶段中公开其中一个参数,请在没有值的情况下重新定义它。

考虑下面的 Dockerfile,我们重新定义了所有上面预定义的 ARG 变量,我在 RaspberryPi 上进行了这个构建,以显示上述 ARG 变量的所有值,如下图所示:

手把手教您设置 Docker 构建中的 ARG 变量

浏览 https://docs.docker.com/engine/reference/builder/#automatic-platform-args-in-the-global-scope 从 Docker 文档中了解更多信息。