📢 欢迎来到万事技术论坛!本站仅讨论合法编程技术话题,严禁外挂/作弊/黑产/盗版内容,违者封号。

Docker 镜像分层,看完这篇就懂了

晚风 核心会员

Docker 镜像不是一整块,是一层层叠加的只读层,最后加一个可写容器层。

每条 RUN / COPY 都生成一个层。好处:
- 层有哈希,相同层复用缓存,构建快、省空间;
- 基础镜像大家都用同一份。

优化技巧:
1. 把变动少的放前面(基础依赖),变动多的放后面(业务代码),缓存命中率高。
2. 一条 RUN 里 apt-get update && install && clean,避免缓存残留。
3. 用 .dockerignore 别把 node_modules 打进去。

FROM python:3.11-slim
COPY requirements.txt .
RUN pip install -r requirements.txt   # 这层很少变
COPY . .                              # 这层常变

理解分层,构建速度和镜像体积立刻下来。

楼主 · 2026-09-27 16:26 · 浏览 267 · 编辑于 2026-09-27 16:26
ops_wang 进阶会员

dockerignore 那步新手必踩,全打进去了镜像 1G+。

1楼 · 2026-09-28 18:00
登录 后即可参与回复。