---
title: "多阶段构建：官方文档怎么把构建工具留在中间层 - Angryecho"
description: "Docker 官方文档把 multi-stage builds 定位成：优化镜像体积、同时保持 Dockerfile 可读。核心做法是多个 FROM，每个开启新阶段；用 COPY --from 只把产物拷到最终阶段，构建工具留在中间层。["
canonical_url: "https://www.angryecho.com/c/Docker/p/P2TBBja0h0TIlggeBMSxx"
meta:
  "og:description": "Docker 官方文档把 multi-stage builds 定位成：优化镜像体积、同时保持 Dockerfile 可读。核心做法是多个 FROM，每个开启新阶段；用 COPY --from 只把产物拷到最终阶段，构建工具留在中间层。["
  "og:image": "https://www.angryecho.com/_og/d/c_Post%2Ctitle_~5ZCQ5qe9572R%2Cdescription_~5ZCQ5qe95LiA5LiL77yM5bCx5LiK5ZCQ5qe9572R44CC%2CpostId_P2TBBja0h0TIlggeBMSxx%2Crevision_~MjAyNi0xMC0yN1QwMjo1Nzo0OS4yMjMzNTBa%2Cp_Ii9jL0RvY2tlci9wL1AyVEJCamEwaDBUSWxnZ2VCTVN4eCI%2Cs_6aefJLgMt-UvVfxZ.png"
  "og:image:height": "630"
  "og:image:type": image/png
  "og:image:width": "1200"
  "og:title": 多阶段构建：官方文档怎么把构建工具留在中间层
---

> Index of every page on this site: [llms.txt](https://www.angryecho.com/llms.txt)

# **多阶段构建：官方文档怎么把构建工具留在中间层**

Docker 官方文档把 multi-stage builds 定位成：优化镜像体积、同时保持 Dockerfile 可读。核心做法是多个 `FROM`，每个开启新阶段；用 `COPY --from` 只把产物拷到最终阶段，构建工具留在中间层。\[1]

最小例子：一阶段用 `golang` 编译出 `/bin/hello`，二阶段 `FROM scratch`，`COPY --from=build` 只拷二进制。给阶段起名 `AS build`，后续指令重排也不容易拷错层。调试可用 `docker build --target build` 停在中间阶段。\[1]

适合镜像瘦身、CI 产物分离。不是新项目，是官方长期推荐路径；写 Dockerfile 前先读原文示例更稳。

文档： https://docs.docker.com/build/building/multi-stage/

## 来源

> \[1] [Docker Docs Multi-stage builds](https://docs.docker.com/build/building/multi-stage/) 2026-10-24

#Docker #多阶段构建 #Dockerfile #镜像优化 #官方文档

排序方式 :

### **成为第一条评论！**

Nobody's responded to this post yet. Add your thoughts and get the conversation going.

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://www.angryecho.com/c/Docker/p/P2TBBja0h0TIlggeBMSxx#post","@type":"DiscussionForumPosting","commentCount":0,"dateModified":"2026-10-27T02:57:49.223Z","datePublished":"2026-10-24T04:00:00.000Z","description":"Docker 官方文档把 multi-stage builds 定位成：优化镜像体积、同时保持 Dockerfile 可读。核心做法是多个 FROM，每个开启新阶段；用 COPY --from 只把产物拷到最终阶段，构建工具留在中间层。[","headline":"多阶段构建：官方文档怎么把构建工具留在中间层","isPartOf":"https://www.angryecho.com/c/Docker","mainEntityOfPage":"https://www.angryecho.com/c/Docker/p/P2TBBja0h0TIlggeBMSxx","text":"Docker 官方文档把 multi-stage builds 定位成：优化镜像体积、同时保持 Dockerfile 可读。核心做法是多个 FROM，每个开启新阶段；用 COPY --from 只把产物拷到最终阶段，构建工具留在中间层。[1]\n\n最小例子：一阶段用 golang 编译出 /bin/hello，二阶段 FROM scratch，COPY --from=build 只拷二进制。给阶段起名 AS build，后续指令重排也不容易拷错层。调试可用 docker build --target build 停在中间阶段。[1]\n\n适合镜像瘦身、CI 产物分离。不是新项目，是官方长期推荐路径；写 Dockerfile 前先读原文示例更稳。\n\n文档：https://docs.docker.com/build/building/multi-stage/\n\n来源\n\n\n\n[1] Docker Docs Multi-stage builds 2026-10-24\n\n#Docker #多阶段构建 #Dockerfile #镜像优化 #官方文档","url":"https://www.angryecho.com/c/Docker/p/P2TBBja0h0TIlggeBMSxx","author":{"@type":"Person","name":"UID:60163758","url":"https://www.angryecho.com/u/NGA60163758"},"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":0},{"@type":"InteractionCounter","interactionType":"https://schema.org/DislikeAction","userInteractionCount":0},{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":0},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":0}]}]}
```

## Sitemap

See the full [sitemap](https://www.angryecho.com/sitemap.md) for all pages.
