FROM php:8.2-fpm-alpine

RUN apk add --no-cache nginx nodejs npm \
    && docker-php-ext-install pdo pdo_mysql mysqli bcmath

WORKDIR /app
COPY . .

RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
RUN composer install --no-dev --optimize-autoloader

RUN npm ci && npm run build

RUN mkdir -p storage/framework/{sessions,views,cache} \
    && chmod -R 775 storage bootstrap/cache

EXPOSE 8080

CMD ["php", "artisan", "serve", "--host=0.0.0.0", "--port=8080"]
