FROM php:8.3-apache RUN apt-get update \ && apt-get install -y --no-install-recommends \ git unzip libicu-dev libzip-dev libpng-dev libjpeg62-turbo-dev libfreetype6-dev libcurl4-openssl-dev libonig-dev \ && docker-php-ext-configure gd --with-freetype --with-jpeg \ && docker-php-ext-install -j"$(nproc)" curl intl gd mbstring mysqli pdo_mysql zip opcache \ && a2enmod rewrite headers expires \ && echo "memory_limit=256M" > /usr/local/etc/php/conf.d/contao-memory-limit.ini \ && rm -rf /var/lib/apt/lists/* COPY --from=composer:2 /usr/bin/composer /usr/bin/composer COPY php-apache/vhost.conf /etc/apache2/sites-available/000-default.conf WORKDIR /var/www/html COPY composer.json ./ RUN if [ -f composer.json ]; then composer install --no-interaction --prefer-dist --no-progress; fi RUN mkdir -p var public/assets \ && chown -R www-data:www-data vendor var public