FROM php:8.3-apache
RUN apt-get update && apt-get install -y --no-install-recommends libpq-dev libpng-dev libjpeg62-turbo-dev libwebp-dev libzip-dev libicu-dev libonig-dev unzip \
    && docker-php-ext-configure gd --with-jpeg --with-webp \
    && docker-php-ext-install -j$(nproc) pdo_pgsql pdo_mysql gd zip intl mbstring exif opcache \
    && rm -rf /var/lib/apt/lists/*
COPY --from=composer:2 /usr/bin/composer /usr/local/bin/composer
WORKDIR /var/www/html
COPY composer.json composer.lock ./
RUN composer install --no-dev --prefer-dist --no-interaction --no-scripts --optimize-autoloader
COPY . .
RUN composer dump-autoload --no-dev --optimize \
    && mkdir -p var && chown -R www-data:www-data var \
    && sed -i 's|/var/www/html|/var/www/html/public|g' /etc/apache2/sites-available/000-default.conf
COPY deploy/apache.conf /etc/apache2/conf-available/pension.conf
RUN a2enconf pension
COPY deploy/entrypoint.sh /usr/local/bin/pension-entrypoint
ENTRYPOINT ["pension-entrypoint"]
CMD ["apache2-foreground"]
