FROM node:24-slim AS builder

ENV NODE_ENV=development
WORKDIR /app

COPY package.json package-lock.json ./
RUN npm install --no-fund --no-audit

COPY . .
RUN npm run build

FROM node:24-slim AS runner

ENV NODE_ENV=production
ENV PORT=8000
ENV HOST=0.0.0.0

WORKDIR /app

COPY --from=builder /app/.output ./.output
COPY --from=builder /app/public ./public
COPY --from=builder /app/package.json ./package.json

EXPOSE 8000

CMD ["node", ".output/server/index.mjs"]
