Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Laravel yelkeninde kullanılan ortak ortam değişkenleri nelerdir


Laravel yelkeninde kullanılan ortak ortam değişkenleri nelerdir


Laravel'in Docker'ı kullanarak bir geliştirme ortamı olan Laravel Sail, büyük ölçüde projenin kökenindeki `.env` dosyasında tanımlanan ortam değişkenlerine dayanmaktadır. Bu ortam değişkenleri uygulamayı ve hizmetlerini yapılandırarak kapların sorunsuz düzenlenmesini ve yerel kalkınma için uygun ayarların ayarlanmasını sağlar.

Laravel Sail'de kullanılan ortak ortam değişkenleri amaçlarına göre gruplandırılabilir: uygulama yapılandırması, veritabanı yapılandırması, servis bağlantı noktaları ve bağlamalar, konteyner kullanıcı ayarları ve yelkene özgü özelleştirmeler.

Uygulama Yapılandırma Değişkenleri

- `` app_name`: Laravel uygulamasının adını tanımlar.
- `` app_env`: Yelken için genellikle `` yerel '' çevre türünü ayarlar.
- `` app_key`: Laravel tarafından şifreleme ve oturum güvenliği için kullanılan baz64 kodlu şifreleme anahtarı.
- `` app_debug`: ayrıntılı hata mesajlarını ve hata ayıklama özelliklerini (`true` veya` false`) etkinleştirmek için bir boole bayrağı.
- `` App_url`: Uygulamanın yerel olarak erişilebilir olduğu URL, genellikle http: // localhost` olarak ayarlanır.

Veritabanı Bağlantı Değişkenleri

Veritabanı kapsayıcıyı (`mysql` hizmeti) düzenlemek için SAIL, MySQL veritabanı kapsayıcısına bağlantıyı tanımlayan değişkenler kullanır:

- `db_connection`: Veritabanı sürücüsünü, tipik olarak` mysql` belirtir.
- `db_host`: Veritabanı sunucusu için ana bilgisayar adı, genellikle mysql 'gibi mysql kapsayıcısının adı.
- `db_port`: MySQL bağlantısı için varsayılan bağlantı noktası, genellikle` `3306 ''.
- `db_database`: kabın içinde kullanılan veritabanının adı.
- `db_username`: Veritabanına erişmek için kullanıcı adı.
- `db_password`: Veritabanı kullanıcısı için şifre.

Redis Yapılandırması

Yelken isteğe bağlı olarak önbellekleme veya oturum işlemesi için REDIS'i destekler. Bu değişkenler REDIS bağlantısını yapılandırır:

- `redis_host`: Redis sunucusu için ana bilgisayar adı, genellikle Redis konteynerine uyacak şekilde` redis`.
- `redis_password`: Varsa redis için şifre.
- `Redis_port`: Port Redis, genellikle` 6379 '' dinliyor.

Service bağlantı noktası yönlendirme değişkenleri

Ana bilgisayar sisteminde halihazırda ortak bağlantı noktalarında çalışan hizmetlerle çatışmalardan kaçınmak için SAIL, hizmetleri için yönlendirilmiş bağlantı noktalarının özelleştirilmesine izin verir:

- `forward_db_port`: MySQL'in kapsayıcıdaki standart bağlantı noktası 3306'ya iletilen yerel makine bağlantı noktası (örneğin, 3306 bağlantı noktası işgal edilmişse bunu ayarlayabilirsiniz).
- `forward_redis_port`: yerel bağlantı noktası REDIS varsayılan bağlantı noktası 6379'a iletildi.
- `forward_mailhog_port`: yerel bağlantı noktası, genellikle e -posta testi için kullanılan MailHog Service bağlantı noktasına iletildi.
- PHPMyAdmin gibi hizmetler veya yapılandırılmışsa diğer yelken hizmetleri için diğer `forward_*` değişkenleri mevcuttur.

Konteyner Kullanıcı ve İzin Değişkenleri

Yelken, dosya izinlerinin ana bilgisayar ve kap arasında tutarlı kalmasını sağlamak için yerel ana bilgisayar kullanıcısıyla eşleşen bir kullanıcı kullanarak kapları çalıştırır. Bu değişkenler kullanıcı kimliklerini kontrol eder:

- `wwwuser`: Kablunun içindeki kullanıcı kimliğini, ana makinenin kullanıcı kimliğine karşılık gelen ve dosya izinleri eşleştirmesini sağlayan ayarlar.
- `wwwgroup`: Konteyner içindeki grup kimliğini ana bilgisayarla eşleşecek şekilde ayarlar.

Yelken Özelleştirme Değişkenleri

- `` app_service`: `docker-compose.yml 'içindeki birincil laravel uygulama hizmeti kapsayıcı adının değiştirilmesine izin verir. Bu, gelişmiş konfigürasyonlar için yararlı olabilir.
- `sail_files`: Standart yelken dosyalarının yanında yüklenecek ek Docker oluşturma geçersiz kılma dosyalarını belirtmenizi sağlar. Bu, yelken ortamını özelleştirmek veya genişletmek içindir.
- `supvisor_php_command`: Laravel oktan gibi araçları entegre ederken kullanışlı olan ana laravel yelken kabı içindeki PHP başlangıç ​​komutunu özelleştirmek için kullanılır.
- `Supervisor_php_user`: Kapsayıcının içindeki süpervizör işleminde PHP çalıştıran kullanıcıyı ayarlar.

Posta Servisi Değişkenleri

Laravel Sail, geliştirme sırasında gönderilen e -postaları yakalamak için bir Mailhog kapsayıcısıyla birlikte gelir. Bu değişkenler posta ayarlarını yapılandırır:

- `mail_mailer`:` smtp` veya başka bir posta sürücüsü olarak ayarlayın.
- `mail_host`: posta sunucusu için ana bilgisayar adı, genellikle` mailhog`.
- `Mail_port`: SMTP için bağlantı noktası, genellikle Mailhog için` 1025 '.
- `mail_username` ve` mail_password`: Gerekirse kimlik bilgileri (geliştirildiğinde yaygın olarak boş bırakılır).

kuyruk ve önbellek sürücüleri

SAIL'in varsayılan `.env` bunları ayarlayabilir:

- `queue_connection`:` sync`, `database` veya` redis` gibi kuyruk sürücüsünü tanımlar.
- `cache_driver`: önbellek sürücüsünü, genellikle` file` veya `redis` belirler.

Diğer Hizmet Ortamı Değişkenleri

- `xdebug_config`: Xdebug ile hata ayıklamak için yelkenle otomatik olarak yapılandırıldı, genellikle` client_host = host.docker.internal` mac ve windows için ayarlayın.
- `puid` ve` pgid`: Kullanıcı-teslim eşleştirme için kullanıcı ve grup kimliklerini açıkça ayarlamak için özel yelken yapılandırmalarında görülür.

Yelken Çevre Değişken Rollerinin Özeti

Çoğunlukla `` .env` dosyasında tanımlanan bu ortam değişkenleri:

- Laravel uygulama temellerini (ad, çevre, hata ayıklama modu, URL) yapılandırın.
- Laravel uygulama kapsayıcısını Docker içindeki veritabanına ve önbellek hizmetlerine bağlayın.
- Yerel bağlantı noktası çatışmalarından kaçınarak konteynerden ana makineye eşleme bağlantı noktaları.
- Ana bilgisayar ve konteyner sistemleri arasında uygun kullanıcı ve grup izinlerini sağlayın.
- Laravel yelken ortamı kaplarını ve süreçlerini ileri kullanım için özelleştirin.

`.Env` dosya ortamı değişkenleri, SAIL'in` Docker-Compose.yml '' de tanımlanan kapların davranışını ve `Sail_files 'ile belirtilen genişletilmiş oluşturma dosyalarını doğrudan kontrol eder. Bu değişkenleri ayarlamak ve SAIL'in yeniden başlatılması (`./vendor/bin/sail aşağı 've` ./vendor/bin/sail yukarı -d` gibi komutları kullanarak) yapılandırma değişikliklerini uygular.

Bu kurulum, Laravel Sail'in Docker kullanarak yalıtılmış, ancak yapılandırılabilir, yerel bir geliştirme ortamı sağlamasını sağlar, geliştirici rahatlığını ve esnekliğini korurken pratik her yerde üretim davranışını yansıtır.