FROM dunglas/frankenphp:php8.4 RUN apt-get update && apt-get install -y --no-install-recommends git unzip && rm -rf /var/lib/apt/lists/* RUN install-php-extensions intl pdo_sqlite zip COPY --from=composer:2 /usr/bin/composer /usr/bin/composer WORKDIR /app # Copy dep manifests first — only reinstalls when these change COPY app/composer.json app/composer.lock ./ RUN composer install --no-interaction --prefer-dist --no-dev --no-scripts # Copy source and refresh autoloader with actual class paths COPY app/ ./ RUN composer dump-autoload --optimize --no-dev EXPOSE 80