FROM php:8.4-apache

RUN apt-get update \
    && apt-get install -y --no-install-recommends libicu-dev libzip-dev unzip git \
    && docker-php-ext-install -j"$(nproc)" intl pdo_mysql bcmath zip opcache \
    && a2enmod rewrite headers expires \
    && rm -rf /var/lib/apt/lists/*

COPY --from=composer:2 /usr/bin/composer /usr/local/bin/composer

# Les dépendances PHP sont préparées dans l'image pour éviter des milliers
# d'accès au système de fichiers Windows au premier démarrage.
WORKDIR /opt/wtl-build
COPY composer.json composer.lock symfony.lock ./
RUN COMPOSER_ALLOW_SUPERUSER=1 composer install \
    --prefer-dist --no-interaction --no-progress --no-scripts --no-dev \
    && cp -a vendor /opt/wtl-vendor

COPY docker/vhost.conf /etc/apache2/sites-available/000-default.conf
COPY docker/php-dev.ini /usr/local/etc/php/conf.d/99-wtl-dev.ini
COPY docker/entrypoint-dev.sh /usr/local/bin/wtl-entrypoint
RUN chmod +x /usr/local/bin/wtl-entrypoint

WORKDIR /var/www/html
ENTRYPOINT ["wtl-entrypoint"]
CMD ["apache2-foreground"]
