技术分享2025年12月29日·7,238
Docker 容器化最佳实践
从 Dockerfile 编写到多阶段构建,从镜像优化到容器编排,全面介绍 Docker 的最佳实践。
#Docker#容器化#DevOps
Docker 容器化最佳实践
Dockerfile 优化
多阶段构建
# 构建阶段
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
CMD ["node", "dist/index.js"]
镜像优化技巧
- 使用 Alpine 镜像:减小镜像体积
- 利用缓存:合理安排 COPY 指令顺序
- .dockerignore:排除不必要的文件
容器编排
使用 Docker Compose:
version: '3.8'
services:
web:
build: .
ports:
- "3000:3000"
environment:
- NODE_ENV=production
db:
image: mongodb:latest
volumes:
- mongo-data:/data/db
volumes:
mongo-data:
最后更新:2026/1/28