FROM composer:2.11.1 AS composer_bin
FROM php:8.5.12-apache-bookworm
COPY --from=composer_bin /usr/bin/composer /usr/local/bin/composer
RUN apt-get update && apt-get install -y --no-install-recommends unzip && rm -rf /var/lib/apt/lists/*
WORKDIR /var/www/app
COPY composer.json composer.lock ./
RUN composer install --no-dev --prefer-dist --no-interaction --optimize-autoloader
COPY . .
RUN sed -i 's@/var/www/html@/var/www/app/public@g' /etc/apache2/sites-available/000-default.conf \
 && printf '<Directory /var/www/app/public>\nRequire all granted\nOptions -Indexes\n</Directory>\nHeader always set X-Content-Type-Options "nosniff"\nHeader always set Content-Security-Policy "default-src '\''self'\''; script-src '\''self'\''; style-src '\''self'\''; connect-src '\''self'\''; img-src '\''self'\'' data:; object-src '\''none'\''; base-uri '\''none'\''; frame-ancestors '\''self'\''"\n' > /etc/apache2/conf-available/process-lab.conf \
 && a2enmod headers && a2enconf process-lab
COPY config/php.ini /usr/local/etc/php/conf.d/process-lab.ini
ENV PROCESS_PHP_BINARY=/usr/local/bin/php PUBLIC_ORIGIN=http://127.0.0.1:8132
