FROM node:22-alpine
WORKDIR /app
RUN corepack enable
COPY package.json pnpm-lock.yaml ./
RUN pnpm install --frozen-lockfile
COPY . .
RUN pnpm exec prisma generate && pnpm build
EXPOSE 3000
# 启动前先跑 Prisma 迁移建表（幂等，已应用的迁移自动跳过），再起服务
CMD ["sh", "-c", "pnpm exec prisma migrate deploy && node dist/main.js"]
