feat(docker): 限制 V8 老生代堆上限防 OOM
This commit is contained in:
@@ -19,6 +19,9 @@ RUN --mount=type=cache,id=pnpm-store,target=/root/.local/share/pnpm/store \
|
|||||||
# ---- 构建层:生成 Prisma Client + Next.js 产物 ----
|
# ---- 构建层:生成 Prisma Client + Next.js 产物 ----
|
||||||
FROM base AS builder
|
FROM base AS builder
|
||||||
ENV NEXT_TELEMETRY_DISABLED=1 NODE_ENV=production
|
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)
|
# 构建时仅需 DATABASE_URL(db:generate 生成 Drizzle Client)
|
||||||
ARG DATABASE_URL
|
ARG DATABASE_URL
|
||||||
ENV DATABASE_URL=${DATABASE_URL}
|
ENV DATABASE_URL=${DATABASE_URL}
|
||||||
|
|||||||
Reference in New Issue
Block a user