# Base Stage FROM node:24.12.0-alpine AS base WORKDIR /app RUN corepack enable && corepack prepare pnpm@latest --activate COPY pnpm-lock.yaml package.json ./ # Development Stage FROM base AS development EXPOSE 5432 CMD ["sh", "-c", "pnpm install && pnpm dev --host"] # Build Stage FROM base AS build RUN pnpm install --frozen-lockfile COPY . . RUN pnpm build # Production Stage FROM fholzer/nginx-brotli:v1.28.0 AS production RUN rm -rf /usr/share/nginx/html/* COPY --from=build /app/.output/public /usr/share/nginx/html COPY nginx.conf /etc/nginx/conf.d/default.conf EXPOSE 80