FROM dunglas/frankenphp:1.12.7-php8.4

ENV APP_ENV=prod \
    COMPOSER_ALLOW_SUPERUSER=1 \
    SERVER_NAME=:8787

RUN apt-get update \
    && apt-get install -y --no-install-recommends git unzip sqlite3 libicu-dev libpq-dev \
    && rm -rf /var/lib/apt/lists/*

RUN docker-php-ext-install bcmath intl pgsql pdo_pgsql

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

WORKDIR /app
# composer.json zuerst → Layer-Cache
COPY composer.json composer.lock ./
RUN composer install --no-dev --optimize-autoloader --no-interaction --prefer-dist --no-scripts

COPY . .

RUN php bin/console cache:warmup --no-interaction || \
    (mkdir -p var/log var/cache prod && chmod -R 777 var)

EXPOSE 8787
