尝试优化镜像大小

This commit is contained in:
mtvpls
2026-01-16 16:36:40 +08:00
parent 6bce099a8d
commit fb83bb5a05

View File

@@ -28,6 +28,9 @@ ENV DOCKER_ENV=true
# 生成生产构建
RUN pnpm run build
# 使用 pnpm deploy 提取生产依赖到独立目录
RUN pnpm deploy --filter=. --prod /tmp/prod-deps
# ---- 第 3 阶段:生成运行时镜像 ----
FROM node:24-alpine AS runner
@@ -55,8 +58,8 @@ COPY --from=builder --chown=nextjs:nodejs /app/server.js ./server.js
COPY --from=builder --chown=nextjs:nodejs /app/public ./public
COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static
# 安装 Socket.IO 相关依赖standalone 模式不会自动包含
RUN pnpm add socket.io@^4.8.1 socket.io-client@^4.8.1 --prod
# 从构建器中复制生产依赖(包含 Socket.IO
COPY --from=builder --chown=nextjs:nodejs /tmp/prod-deps/node_modules ./node_modules
# 切换到非特权用户
USER nextjs