# Stage 1: Build the React app FROM node:16-alpine AS build # Set working directory WORKDIR /app # Copy package.json and package-lock.json COPY package*.json ./ # Install dependencies RUN npm install # Copy the rest of the application code COPY . . # Build the React app RUN npm run build # Stage 2: Serve the built app with a lightweight web server FROM nginx:alpine # Copy the built files from the previous stage COPY --from=build /app/dist /usr/share/nginx/html # Expose port 7860 EXPOSE 7860 # Replace the default nginx.conf with our configuration RUN rm /etc/nginx/conf.d/default.conf COPY nginx.conf /etc/nginx/conf.d # Start Nginx server CMD ["nginx", "-g", "daemon off;"]