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

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dt763C/article/details/86587249

640?wx_fmt=png

出品丨Docker公司(ID:docker-cn)

编译丨小东

每周一、三、五晚6点10分  与您不见不散!


说在前面


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


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

&


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

DOCKER_BUILDKIT=1


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

自动设置以下 ARG 变量:


ARG 变量 描述
TARGETPLATFORM 正在进行构建镜像的平台,例如:linux/amd64、linux/arm/v7 和 windows/amd64;
TARGETOS 目标平台的 OS 操作系统值,例如 :linux,windows;
TARGETARCH 目标平台的 CPU 架构;
TARGETVARIANT CPU 的变体,例如:v7 —— 当架构是 arm 时指定 ARMv7;
BUILDPLATFORM 执行构建节点平台;
BUILDOS 执行构建节点的 OS 操作系统值;
BUILDARCH 构建平台的 CPU 架构;
BUILDVARIANT 用于构建平台的 CPU变体;


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

 

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


640?wx_fmt=png


点击文尾处“阅读原文”从 Docker 文档中了解更多信息。


640?wx_fmt=png


点击下列标题,阅读更多干货



如果本文对你有帮助,欢迎分享到朋友圈!获取更多Docker实用技巧,扫描下图二维码!

 640?wx_fmt=png

猜你喜欢

转载自blog.csdn.net/dt763C/article/details/86587249
今日推荐