From 76ecc83087f4f0202d80dbaf021bed9378914ff0 Mon Sep 17 00:00:00 2001 From: ngks Date: Fri, 19 Dec 2025 14:11:05 +0800 Subject: [PATCH] =?UTF-8?q?update:'=E6=B7=BB=E5=8A=A0=E5=89=8D=E7=AB=AFdoc?= =?UTF-8?q?kerfile'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..75206565 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,35 @@ +# 阶段1: 构建阶段 +FROM node:22.14.0-slim AS builder + +WORKDIR /app + +# 全局安装 pnpm +RUN npm install -g pnpm + +# 复制依赖文件 +COPY package.json pnpm-lock.yaml ./ +RUN pnpm install --registry https://registry.npmmirror.com + +# 复制源码并构建 +COPY . . +RUN pnpm run build:prod + +# 阶段2: 生产运行阶段 +FROM node:22.14.0-slim + +WORKDIR /app + +# 全局安装 pnpm(确保运行时可用) +RUN npm install -g pnpm --registry https://registry.npmmirror.com + +# 从构建阶段复制所有文件(包括 node_modules 和构建产物) +COPY --from=builder /app . + +# 设置环境变量 +ENV PORT 8088 +ENV NODE_ENV production + +EXPOSE 8088 + +# 使用 pnpm 启动 +CMD ["pnpm", "start"] \ No newline at end of file