FROM php:8.2-cli

# system deps
RUN apt-get update && apt-get install -y --no-install-recommends \
    git unzip libicu-dev libzip-dev libonig-dev \
 && docker-php-ext-install pdo_mysql intl zip mbstring \
 && rm -rf /var/lib/apt/lists/*

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

WORKDIR /app

# install php deps
COPY composer.json composer.lock ./
RUN composer install --no-dev --prefer-dist --no-interaction --no-progress --optimize-autoloader

# copy app
COPY . .

# perms
RUN chown -R www-data:www-data storage bootstrap/cache

# serve Laravel via PHP built-in server (for prod, prefer nginx+php-fpm)
EXPOSE 8080
CMD php -d variables_order=EGPCS -S 0.0.0.0:8080 -t public public/index.php
