ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

2.6 Docker镜像优化技巧:多阶段构建让你的镜像体积减少80%

2026/8/6 7:53:12 拓冰建站 浏览量
2.6 Docker镜像优化技巧:多阶段构建让你的镜像体积减少80%

2.6 Docker镜像优化技巧:多阶段构建让你的镜像体积减少80%

引言

Docker镜像大小直接影响部署速度和存储成本。通过多阶段构建等优化技巧,可以将镜像体积减少80%以上。本文将详细介绍Docker镜像优化的各种方法和实战技巧。

一、镜像大小问题

1.1 镜像大小的影响

  • 拉取时间:镜像越大,拉取时间越长
  • 存储成本:占用更多存储空间
  • 部署速度:影响容器启动速度

1.2 查看镜像大小

# 查看镜像大小dockerimages# 查看详细大小dockersystemdf-v# 查看镜像层dockerhistorynginx:latest

二、多阶段构建

2.1 什么是多阶段构建

多阶段构建允许在一个Dockerfile中使用多个FROM指令,每个FROM开始一个新的构建阶段。

2.2 单阶段 vs 多阶段

单阶段构建(问题):

FROM node:18 WORKDIR /app COPY . . RUN npm install RUN npm run build # 包含构建工具和源代码,镜像很大 CMD ["node", "dist/index.js"]

多阶段构建(优化):

# 构建阶段 FROM node:18 AS builder WORKDIR /app COPY package*.json ./ RUN npm ci COPY . . RUN npm run build # 运行阶段 FROM node:18-alpine WORKDIR /app COPY --from=builder /app/dist ./dist COPY --from=builder /app/node_modules ./node_modules COPY package*.json ./ CMD ["node", "dist/index.js"]

2.3 Go应用多阶段构建

# 构建阶段 FROM golang:1.21 AS builder WORKDIR /build COPY