diff --git a/Dockerfile b/Dockerfile index d720cd9..b3609f0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ ############################################################ # 1) 依赖层 - 只要锁文件没变,永远复用 ############################################################ -FROM node:22-alpine AS deps +FROM node:22-alpine AS deps # 国内加速 RUN npm config set registry https://registry.npmmirror.com @@ -24,11 +24,11 @@ COPY --from=deps /app/node_modules ./node_modules COPY . . # 运行补丁 -RUN chmod +x patch-ui-pro.zsh && ./patch-ui-pro.zsh +RUN chmod +x patch-ui-pro.sh && ./patch-ui-pro.sh # 注意把内存限制放在这里,避免本地开发时也被硬限制 ENV NODE_OPTIONS="--max-old-space-size=4096" -RUN pnpm build +RUN corepack enable && pnpm build ############################################################ # 3) 运行层 - 只有可运行文件,最小镜像 @@ -36,7 +36,8 @@ RUN pnpm build FROM node:22-alpine AS production WORKDIR /app -COPY --from=builder /app/.output ./.output +COPY --chown=node:node --from=builder /app/.output ./.output EXPOSE 3000 ENV NODE_ENV=production HOST=0.0.0.0 PORT=3000 +USER node CMD ["node", ".output/server/index.mjs"] diff --git a/patch-ui-pro.zsh b/patch-ui-pro.sh similarity index 100% rename from patch-ui-pro.zsh rename to patch-ui-pro.sh