---
title: Docker多阶段构建与镜像瘦身实践
keywords:
- Docker
- 多阶段构建
- 镜像优化
- 构建缓存
- Dockerfile
description: 通过多阶段构建、合理分层与缓存策略显著降低镜像体积并提升构建与部署效率。
validated_params:
- 名称: 多阶段构建语法
参数: Dockerfile
值: FROM <image> AS builder / FROM <image> / COPY --from=builder
来源: https://docs.docker.com/build/building/multi-stage/
- 名称: 目标阶段构建
参数: 命令
值: docker build --target <stage>
来源: https://docs.docker.com/engine/reference/commandline/build/
categories:
- 文章资讯
- 技术教程
---
概览
多阶段构建将编译与运行环境分离,产出最小化运行镜像,降低安全面与传输成本。
正文
1. 基础策略
- Builder阶段安装依赖并编译,Runtime阶段仅携带产物与最小依赖。
- 选择瘦身基础镜像:
alpine或distroless,谨慎权衡兼容性。
2. 分层与缓存
- 合并
RUN指令减少层数;固定apt源与版本以稳定缓存。 - 利用
--mount=type=cache(BuildKit)缓存依赖与编译中间结果。
3. 安全与合规
- 移除构建工具与敏感文件;设置非root用户运行。
- 使用
trivy等工具扫描漏洞,建立镜像基线与更新策略。
参考资料
- Docker Build 文档: https://docs.docker.com/build/

发表评论 取消回复