-
euo4 变现指南 用户
Docker容器化部署最容易踩的 15 个坑:最后一个让所有镜像白跑
配置前必做三件事
- 备份当前镜像:
docker save -o backup.tar <image> - 清理无用镜像:
docker system prune -a释放空间 - 确认内核版本:
uname -r,Docker 要求内核 ≥ 3.10
坑 1:忽略镜像分层导致的层缓存失效
问题现象
修改某一行代码后,整个镜像重新构建,耗时从 30 秒变成 10 分钟。
原因分析
Docker 使用层缓存机制,任何一层变化都会导致后续层全部重建。
正确做法
# ❌ 错误:COPY 会把所有文件都复制进去,破坏缓存
COPY . /app
RUN npm install
# ✅ 正确:先复制 package.json,利用缓存
COPY package*.json ./
RUN npm install
COPY . /app
坑 2:在容器内运行非 PID 1 进程导致信号无法接收
问题现象
docker stop 后容器需要 30 秒才退出,有时直接 SIGKILL。
原因分析
非 PID 1 进程不会收到 SIGTERM,只会等超时后被强杀。
正确做法
# 使用 exec 格式,确保进程成为 PID 1
ENTRYPOINT ["node",