Automatic platform ARGs in the global scope(全局作用域中自动化平台的ARGS)
这个特性只有在使用Buildkit时才可以使用。
docker利用执行构建任务的平台的信息预先定义了一组ARG变量,这些变量在生成镜像的平台上(目标平台)。执行docker build时,可以通过--platform来指定目标平台。
下面的ARG变量都是自动设置的:
TARGETPLATFORM - 目标平台. 例如linux/amd64, linux/arm/v7, windows/amd64.
TARGETOS - 目标平台的操作系统
TARGETARCH- 目标平台的架构
TARGETVARIANT - 目标平台的辩题
BUILDPLATFORM- 执行构建的节点平台
BUILDOS- 构建平台的操作系统
BUILDARCH - 构建平台的架构
BUILDVARIANT - 构建平台的变体
这些参数定义在全局作用域中,因此这些变量在构建阶段或RUN命令中并不会自动可用。为了能够在构建阶段中暴露并使用这些参数,需要通过ARG指令重新声明一个不带值的同名变量。
例如:
Last updated