# FROM node:24.10.1

# WORKDIR /app

# COPY package*.json ./


# syntax=docker/dockerfile:1
# build stage

FROM node:18-alpine AS build
WORKDIR /app
COPY package*.json ./
COPY pnpm-lock.yaml* ./
RUN apk add --no-cache python3 make g++  # optional deps for native builds
RUN npm ci --silent
COPY . .
RUN npm run build

# production stage
FROM node:18-alpine AS prod
WORKDIR /app
ENV NODE_ENV=production
# copy only what is needed
COPY package*.json ./
RUN npm ci --only=production --silent
COPY --from=build /app/dist ./dist
# if you use prisma, copy prisma schema + client
# COPY --from=build /app/prisma ./prisma
EXPOSE 3000
CMD ["node", "dist/server.js"]
