# Stage 1: Build Frontend FROM node:22-alpine AS builder WORKDIR /app COPY package.json ./ RUN npm install COPY . . RUN npm run build # Stage 2: Production Runtime FROM node:22-alpine WORKDIR /app ENV NODE_ENV=production # Copy backend package.json as main package.json COPY backend/package.json ./package.json # Install dependencies RUN npm install --omit=dev # Copy backend source directly into root COPY backend/index.js ./index.js COPY backend/db.js ./db.js # Copy built frontend COPY --from=builder /app/dist ./dist EXPOSE 3001 CMD ["node", "index.js"]