| 预定义变量 | BUILDPLATFORM / TARGETPLATFORM / TARGETOS / TARGETARCH |
|---|---|
| 语法 | FROM --platform=$BUILDPLATFORM golang:1.23 AS build |
| 依赖 | BuildKit(docker buildx / Docker 23+ 默认) |
示例
示例
FROM --platform=$BUILDPLATFORM golang:1.23 AS build
ARG TARGETOS TARGETARCH
RUN GOOS=$TARGETOS GOARCH=$TARGETARCH go build -o /out/app .
FROM alpine:3.20
COPY --from=build /out/app /usr/local/bin/appTARGETOS/TARGETARCH 必须在 FROM 之后用 ARG 重新声明才可用;它们由 BuildKit 按目标平台注入。