# Laravel için PHP 8.2 resmi imajını kullanıyoruz FROM php:8.2-fpm # Çalışma dizinini belirleyelim WORKDIR /var/www # Gerekli bağımlılıkları yükleyelim RUN apt-get update && apt-get install -y \ git \ unzip \ curl \ libpng-dev \ libonig-dev \ libxml2-dev \ zip \ cron \ ntp \ && service cron start && \ ntpd -gq && \ ntpd && \ docker-php-ext-install pdo_mysql mbstring exif pcntl bcmath gd \ && echo "* * * * * cd /var/www && php /var/www/artisan run-all-fetchs >> /dev/null 2>&1" >> /etc/cron.d/laravel-cron \ && chmod 0644 /etc/cron.d/laravel-cron \ && crontab /etc/cron.d/laravel-cron # Composer'ı yükleyelim COPY --from=composer:latest /usr/bin/composer /usr/bin/composer # Laravel proje dosyalarını kopyalayalım COPY . . # Gerekli dizinleri oluşturma RUN mkdir -p /var/www/storage/app/private/scribe # Start of Selection RUN set -x && \ echo "Dosya izinleri ayarlanıyor..." && \ chown -R www-data:www-data /var/www && \ echo "chown komutu tamamlandı" && \ find /var/www -type d -exec chmod 775 {} \; && \ echo "Dizin izinleri ayarlandı" && \ find /var/www -type f -exec chmod 664 {} \; && \ echo "Dosya izinleri ayarlandı" && \ chmod -R 775 /var/www/storage && \ echo "Storage izinleri ayarlandı" && \ chmod -R 775 /var/www/bootstrap/cache && \ echo "Cache izinleri ayarlandı" && \ chmod -R 775 /var/www/storage/framework/views && \ echo "Views izinleri ayarlandı" && \ chmod -R 775 /var/www/public && \ echo "Public dizin izinleri ayarlandı" # Laravel uygulamasını başlatma ve loglama RUN set -x && \ # echo "Laravel kurulum komutları başlatılıyor..." && \ # php artisan migrate && \ # echo "Migrasyon tamamlandı" && \ php artisan key:generate && \ echo "Uygulama anahtarı oluşturuldu" && \ php artisan config:cache && \ echo "Konfigürasyon önbelleğe alındı" && \ php artisan route:cache && \ echo "Rotalar önbelleğe alındı" && \ php artisan view:cache && \ echo "Görünümler önbelleğe alındı" && \ php artisan storage:link && \ echo "Storage sembolik bağlantısı oluşturuldu" && \ php artisan scribe:generate && \ echo "API dokümantasyonu oluşturuldu" && \ echo "Laravel uygulaması başarıyla başlatıldı."; RUN service cron start && \ echo "Cron başlatıldı"