diff --git a/dockerfile b/dockerfile index b98583f..acaeb50 100644 --- a/dockerfile +++ b/dockerfile @@ -19,6 +19,9 @@ RUN --mount=type=cache,id=pnpm-store,target=/root/.local/share/pnpm/store \ # ---- 构建层:生成 Prisma Client + Next.js 产物 ---- FROM base AS builder ENV NEXT_TELEMETRY_DISABLED=1 NODE_ENV=production +# 限制 V8 老生代堆上限(MB),需略低于容器内存限额,让 V8 主动 GC 而非被 OOM Killer 强杀 +# 默认 2048MB,按实际容器内存调整(例如容器限 3G 则设 2560,留余量给非堆开销) +ENV NODE_OPTIONS="--max-old-space-size=2048" # 构建时仅需 DATABASE_URL(db:generate 生成 Drizzle Client) ARG DATABASE_URL ENV DATABASE_URL=${DATABASE_URL}