# cat Dockerfile
# Stage 1: Builder
FROM node:20-alpine AS builder

WORKDIR /app

# Install pnpm
RUN npm install -g pnpm@9.0.0

# Copy files
COPY pnpm-lock.yaml ./
COPY package.json ./
COPY turbo.json ./
COPY . .

# Install deps and build
RUN pnpm install --frozen-lockfile
RUN pnpm build

# Stage 2: Runtime
FROM node:20-alpine

WORKDIR /app

COPY --from=builder /app ./

CMD ["node", "apps/web/server.js"]

