# Stage 1: Build the React Application FROM node:20 AS build WORKDIR /app COPY package.json package-lock.json ./ RUN npm ci COPY . . RUN npm run build # Stage 2: Serve the application with Apache FROM --platform=linux/amd64 php:8.4-apache WORKDIR /var/www/html # Enable necessary Apache modules RUN a2enmod rewrite headers COPY vhost.conf /etc/apache2/sites-available/000-default.conf # Copy the built application from the build stage COPY --from=build /app/dist /app/dist # Ensure correct permissions RUN chown -R www-data:www-data /app # Keep original PHP extensions just in case RUN docker-php-ext-install mysqli pdo pdo_mysql EXPOSE 80