Laravel ve Docker ile Geliştirme Ortamı Kurulumu

Kaan Atalay

Kaan Atalay

11 Haz 2024

Geliştirme ortamlarının tutarlı ve taşınabilir olması, ekip içi verimliliği artırır. Docker, uygulamanızı konteynerler içinde çalıştırarak bu ihtiyacı karşılar. Laravel projelerinizi Docker ile nasıl çalıştırabileceğinizi bu yazıda ele alıyoruz.

1. Neden Docker Kullanmalısınız?

  • Tutarlılık: Tüm ekip üyeleri aynı ortamda çalışır.
  • Taşınabilirlik: Uygulamanızı farklı platformlarda kolayca çalıştırabilirsiniz.
  • Kolay Kurulum: Bağımlılıkların ve servislerin hızlı kurulumu.

2. Gerekli Dosyaların Oluşturulması

  • Dockerfile: Laravel uygulamanız için Docker imajını tanımlar.
  • docker-compose.yml: Servislerin nasıl çalışacağını belirtir.

3. Dockerfile İçeriği

FROM php:8.0-fpm

RUN apt-get update && apt-get install -y \
    build-essential \
    libpng-dev \
    libjpeg62-turbo-dev \
    libfreetype6-dev \
    libonig-dev \
    libxml2-dev \
    zip \
    unzip \
    git

# PHP extensiyonlarının kurulumu
RUN docker-php-ext-install pdo_mysql mbstring exif pcntl bcmath gd

# Composer kurulumu
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

WORKDIR /var/www

COPY . .

RUN composer install

CMD ["php-fpm"]

4. docker-compose.yml İçeriği

version: '3.8'
services:
  app:
    build:
      context: .
      dockerfile: Dockerfile
    image: laravel-app
    container_name: laravel-app
    ports:
      - '8000:80'
    volumes:
      - ./:/var/www
    networks:
      - laravel

  db:
    image: mysql:5.7
    container_name: laravel-db
    environment:
      MYSQL_DATABASE: laravel
      MYSQL_ROOT_PASSWORD: secret
    ports:
      - '3306:3306'
    networks:
      - laravel

networks:
  laravel:
    driver: bridge

5. Ortamın Başlatılması

docker-compose up -d

Bu komut, uygulama ve veritabanı konteynerlerini başlatır.

6. .env Dosyasının Ayarlanması

Veritabanı bağlantı ayarlarını güncelleyin:

DB_HOST=db DB_DATABASE=laravel DB_USERNAME=root DB_PASSWORD=secret

7. Uygulamanın Çalıştırılması

Docker konteyneri içinde artisan komutlarını çalıştırın:

docker-compose exec app php artisan migrate

8. Dosya İzinleri ve Performans

  • Cache ve Log dizinlerinin izinlerini ayarlayın.
  • Performansı artırmak için opcache kullanın.

9. Hata Ayıklama

  • docker logs komutu ile konteyner loglarını inceleyin.
  • Xdebug kurulumu ile hata ayıklama yapın.

10. En İyi Uygulamalar

  • Ortam değişkenlerini doğru yönetin.
  • Gereksiz servisleri ve bağımlılıkları kaldırın.
  • Docker imaj boyutunu optimize edin.

Sonuç

Laravel ve Docker kullanarak, hızlı ve tutarlı bir geliştirme ortamı oluşturabilirsiniz. Bu yaklaşım, projelerinizin kurulumu ve dağıtımı konusunda büyük kolaylık sağlar. Atalay Tech olarak, Docker ve konteyner teknolojileri konusundaki uzmanlığımızla size destek oluyoruz. Daha fazla bilgi için bizimle iletişime geçin.

Dijital Dönüşüm Ortağınız

Atalay Tech, yenilikçi web yazılım, mobil uygulama ve e-ticaret çözümleri sunan dinamik bir teknoloji şirketidir. Müşteri odaklı yaklaşımımızla iş süreçlerinizi hızlandırıyor ve teknolojiyi verimli bir şekilde kullanmanıza yardımcı oluyoruz. Modern yazılım mimarileri ve yüksek performanslı uygulamalarla iş dünyasında öne çıkmanızı sağlıyoruz.

Kurumsal
İletişim
Blog

Telif Hakkı © 2025 atalay.tech