FROM node:20-alpine AS base RUN corepack enable && corepack prepare pnpm@9.0.0 --activate FROM base AS builder WORKDIR /app COPY package.json pnpm-workspace.yaml pnpm-lock.yaml* ./ COPY packages/shared-types/package.json ./packages/shared-types/ COPY packages/frontend/package.json ./packages/frontend/ RUN pnpm install --frozen-lockfile || pnpm install COPY packages/shared-types ./packages/shared-types COPY packages/frontend ./packages/frontend RUN pnpm --filter @nick-tracker/shared-types build RUN pnpm --filter @nick-tracker/frontend build FROM nginx:alpine AS runner COPY --from=builder /app/packages/frontend/dist /usr/share/nginx/html COPY packages/frontend/nginx.conf /etc/nginx/conf.d/default.conf EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]