首页/云/Docker 容器速查/多阶段构建组织镜像
本包目录(366 条)
基础命令50 条
镜像与构建107 条
网络与存储52 条Compose 编排55 条资源与安全50 条容器排障52 条

多阶段构建组织镜像

多个 FROM 各自独立构建,用 COPY --from 把产物从构建阶段带到运行阶段;最终镜像只包含最后一个阶段的内容。

Docker 容器速查云更新于 2026-10-12
用途构建产物与运行环境分离
语法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"]
编译器等只在构建阶段存在,最终镜像不携带工具链,体积与攻击面同步下降。

易错点

  • 阶段名重复或与引用大小写不一致会构建失败,统一小写并保持引用一致
  • 调试中间阶段用 docker build --target build,发布则不加 --target

数据来源与参考

  • Docker 官方文档:Multi-stage builds(docs.docker.com)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌