Dockerfile 451 B

12345678910111213141516171819202122232425262728
  1. # Frontend Build Stage
  2. FROM node:18-alpine as build
  3. WORKDIR /app
  4. # Copy package files
  5. COPY package*.json ./
  6. RUN npm install
  7. # Copy source code
  8. COPY . .
  9. # Build the application
  10. RUN npm run build
  11. # Production Stage
  12. FROM nginx:alpine
  13. # Copy built application
  14. COPY --from=build /app/build /usr/share/nginx/html
  15. # Copy nginx configuration
  16. COPY nginx.conf /etc/nginx/conf.d/default.conf
  17. # Expose port
  18. EXPOSE 3000
  19. CMD ["nginx", "-g", "daemon off;"]