From指令中的未定义参数

输出

FROM argument 'VARIANT' is not declared

描述

此规则警告您在 FROM 指令中使用未定义构建参数的情况。

FROM 条指令中插入构建参数是为构建增加灵活性的好方法,并且允许您传递参数来覆盖阶段的基础镜像。例如,您可以使用构建参数来指定镜像标签:

ARG ALPINE_VERSION=3.20

FROM alpine:${ALPINE_VERSION}

这使得可以通过指定构建参数来使用不同的 alpine 版本运行构建:

$ docker buildx build --build-arg ALPINE_VERSION=edge .

此检查还尝试检测并警告当 FROM 指令引用了拼写错误的内置构建参数时,例如 BUILDPLATFORM

示例

❌ 错误:VARIANT 构建参数未定义。

FROM node:22${VARIANT} AS jsbuilder

✅ 很好:已定义 VARIANT 构建参数。

ARG VARIANT="-alpine3.20"
FROM node:22${VARIANT} AS jsbuilder