# Stage 1: Build the React frontend FROM node:16 AS build # Set the working directory WORKDIR /app # Copy the React frontend code COPY frontend/package.json frontend/package-lock.json ./frontend/ RUN cd frontend && npm install # Build the React app (inside the frontend folder) COPY frontend ./frontend RUN cd frontend && npm run build # Stage 2: Set up the Node.js backend FROM node:16 # Set the working directory WORKDIR /app # Copy backend code COPY backend/package.json backend/package-lock.json ./backend/ RUN cd backend && npm install # Copy the React build files from Stage 1 to the backend/build folder COPY --from=build /app/frontend/build ./backend/build # Copy the backend source code COPY backend ./backend RUN mkdir -p /app/backend/database && chmod -R 777 /app/backend/database # Expose the backend's port EXPOSE 7860 WORKDIR /app/backend # Start the backend server CMD [ "node", "./index.js"]