| 用途 | 构建产物与运行环境分离 |
|---|---|
| 语法 | FROM ... AS 阶段名 + COPY --from=阶段名 |
| 发布 | 默认最后阶段为最终镜像,可用 --target 指定 |
示例
示例
FROM golang:1.23 AS build
WORKDIR /src
COPY . .
RUN CGO_ENABLED=0 go build -o /out/app ./cmd/app
FROM gcr.io/distroless/static-debian12
COPY --from=build /out/app /app
ENTRYPOINT ["/app"]编译器等只在构建阶段存在,最终镜像不携带工具链,体积与攻击面同步下降。