# 阶段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

# 阶段2: 生产运行阶段
FROM node:22.14.0-slim

WORKDIR /app

# 全局安装 pnpm（确保运行时可用）
RUN npm install -g pnpm

# 从构建阶段复制所有文件（包括 node_modules 和构建产物）
COPY --from=builder /app .

# 设置环境变量
ENV PORT 3000
ENV NODE_ENV production

EXPOSE 3000

# 使用 pnpm 启动
CMD ["pnpm", "start"]