使用适当的基础镜像
使用多阶段构建
FROM
指令,每个代表一个构建阶段。复制代码# 构建阶段1
FROM golang:1.17 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp
# 构建阶段2
FROM alpine:latest
COPY --from=builder /app/myapp /usr/local/bin/
WORKDIR /usr/local/bin
CMD ["myapp"]
有效使用缓存
复制代码# 设置基础镜像
FROM node:14
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
CMD ["node", "app.js"]
多层镜像构建优化
RUN
指令,减少镜像层数,节省存储空间。复制代码RUN apt-get update && apt-get install -y \
package1 \
package2 \
package3
通过以上四个技巧,可以显著减小 Docker 镜像的体积,提高构建效率和运行时性能。