# PHP 8.2 ile çalışan Dockerfile (önerilen)
FROM php:8.2-fpm

# Gerekli paketleri yükle
RUN apt-get update && apt-get install -y \
    git \
    curl \
    libpng-dev \
    libonig-dev \
    libxml2-dev \
    zip \
    unzip \
    nodejs \
    npm

# PHP extensions yükle
RUN docker-php-ext-install pdo_mysql mbstring exif pcntl bcmath gd

# Composer yükle
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

# Çalışma dizinini ayarla
WORKDIR /var/www

# Proje dosyalarını kopyala
COPY . /var/www

# Composer bağımlılıklarını yükle
RUN composer install --no-scripts --no-autoloader --no-dev --prefer-dist

# Autoloader oluştur
RUN composer dump-autoload --optimize

# NPM bağımlılıklarını yükle ve build et
RUN npm install && npm run build

# Dosya izinlerini ayarla
RUN chown -R www-data:www-data /var/www
RUN chmod -R 755 /var/www/storage

EXPOSE 9000

CMD ["php-fpm"]
