Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Jaké jsou běžné proměnné prostředí používané při plachtě


Jaké jsou běžné proměnné prostředí používané při plachtě


Laravel Sail, vývojové prostředí pro Laravel pomocí Docker, se silně spoléhá na proměnné prostředí definované primárně v souboru `.env` v kořeni projektu. Tyto proměnné prostředí nakonfigurují aplikaci a její služby a umožňují bezproblémovou orchestraci kontejnerů a ladění nastavení vhodné pro místní rozvoj.

Společné proměnné prostředí použité v Laravel Sail mohou být seskupeny podle jejich účelu: konfigurace aplikace, konfigurace databáze, servisní porty a vazby, nastavení uživatelů kontejnerů a přizpůsobení specifické pro plachtě.

Proměnné konfigurace aplikací

- `app_name`: Definuje název aplikace Laravel.
- `app_env`: Nastaví typ prostředí, obvykle„ místní “pro plachtu.
- `app_key`: Šifrovací klíč kódovaný Base64 používaný Laravelem pro šifrování a zabezpečení relace.
- `app_debug`: booleovská příznak, která povolí podrobné chybové zprávy a funkce ladění (` true` nebo `false`).
- `app_url`: URL, kde je aplikace přístupná lokálně, často nastavena na` http: // localhost`.

Proměnné připojení databáze

Pro orchestraci kontejneru databáze (služba „mysql`) používá plachtění proměnné, které definují připojení k kontejneru databáze MySQL:

- `db_connection`: označuje ovladač databáze, obvykle` mysql`.
- `db_host`: Název hostitele pro databázový server, obvykle název kontejneru MySQL, jako je` mysql`.
- `db_port`: Výchozí port pro připojení MySQL, obvykle` 3306`.
- `DB_Database`: Název databáze použité uvnitř kontejneru.
- `db_username`: Uživatelské jméno pro přístup k databázi.
- `db_password`: heslo pro uživatele databáze.

Redis Konfigurace

Sail volitelně podporuje Redis pro ukládání do mezipaměti nebo zpracování relací. Tyto proměnné konfigurují připojení redis:

- `redis_host`: název hostitele pro server Redis, často` redis`, aby odpovídal kontejneru Redis.
- `redis_password`: heslo pro redis, pokud existuje.
- `Redis_Port`: Port Redis poslouchá, často` 6379`.

Proměnné pro předávání portů servisního portu

Aby se zabránilo konfliktům se službami, které již běží na běžných portech v hostitelském systému, umožňuje plachta přizpůsobení přeposlaných portů pro své služby:

- `Forward_DB_PORT`: Port místního stroje předán na standardní port 3306 MySQL v kontejneru (např. Můžete to nastavit, pokud je port 3306 obsazen).
- `Forward_redis_Port`: Místní port předán na výchozí port Redis 6379.
- `Forward_mailHog_Port`: Místní port předán do poštovní služby, obvykle používaný pro e -mailové testování.
- Jiné `Forward_*` proměnné existují pro služby, jako je PhpMyAdmin nebo jiné plachetní služby, pokud jsou nakonfigurovány.

Proměnné kontejneru a oprávnění

Sail provozuje kontejnery pomocí uživatele, který odpovídá místnímu hostitelskému uživateli, aby se zajistilo, že oprávnění souboru zůstávají konzistentní mezi hostitelem a kontejnerem. Tyto proměnné řídí ID uživatele:

- `wwwuser`: Nastaví ID uživatele uvnitř kontejneru, který odpovídá ID uživatele hostitelského počítače a zajišťuje shodu o povolení k souboru.
- `wwwgroup`: Nastaví ID skupiny uvnitř kontejneru tak, aby odpovídalo hostiteli.

Proměnné přizpůsobení plachty

- `app_service`: Umožňuje změnit název primárního názvu kontejneru aplikace Laravel Application uvnitř` Docker-compose.yml`. To může být užitečné pro pokročilé konfigurace.
- `Sail_Files`: Umožňuje zadat další soubory přepsání Docker, které mají být načteny podél standardních souborů plachty. To je pro přizpůsobení nebo prodloužení prostředí plachty.
- `supervisor_php_command`: Používá se k přizpůsobení příkazu spuštění PHP uvnitř hlavního kontejneru Laravel Sail, které je užitečné při integraci nástrojů, jako je Laravel Octane.
- `supervisor_php_user`: Nastaví uživatele, který provozuje PHP v procesu supervizoru uvnitř kontejneru.

Proměnné poštovní služby

Laravel Sail je dodáván s kontejnerem Mailhog pro zachycení e -mailů zaslaných během vývoje. Tyto proměnné konfigurují nastavení pošty:

- `Mail_mailer`: Nastavte se na` smtp` nebo jiného řidiče poštovních zásilek.
- `Mail_Host`: Název hostitele pro poštovní server, obvykle` MailHog`.
- `Mail_Port`: Port pro SMTP, obvykle` 1025` pro MailHog.
- `Mail_Username` a` Mail_Password`: V případě potřeby přihlašovací údaje (běžně ponecháno prázdné ve vývoji).

Ovladače fronty a mezipaměti

Výchozí nastavení Sail's Default `.env` je může nastavit:

- `queue_connection`: Definuje ovladač fronty, jako je` synchronizace, „databáze“ nebo `redis`.
- `Cache_Driver`: Určuje ovladač mezipaměti, často` file` nebo `redis`.

Ostatní proměnné prostředí pro servisní prostředí

- `xdebug_config`: Nakonfigurováno automaticky plachtou pro ladění pomocí XDEBUG, často nastavení` client_host = host.docker.internal` pro Mac a Windows.
- `puid` a` pGid`: Občas viděno v konfiguracích vlastních plachty pro výslovně nastavení ID uživatele a skupiny pro porovnávání permise uživatele.

Shrnutí proměnných environmentů v plachtě

Tyto proměnné prostředí, většinou definované v souboru `.env`, slouží:

- Nakonfigurujte základny aplikace Laravel Application (název, prostředí, režim ladění, URL).
- Připojte kontejner aplikace Laravel k jeho databázi a mezipaměťové služby uvnitř Docker.
- Map porty z kontejneru do hostitelského počítače a vyhýbání se konfliktům místních portů.
- Zajistěte správná oprávnění uživatele a skupiny mezi hostitelskými a kontejnerovými systémy.
- Přizpůsobte si kontejnery a procesy prostředí Laravel Sail pro pokročilé použití.

Proměnné prostředí „Env“ přímo řídí chování kontejnerů definovaných v Sail's `Docker-Compose.yml` a jakékoli rozšířené soubory pro kompose označené` sail_files “. Úpravy těchto proměnných a restartování plachty (pomocí příkazů jako `./Vendor/bin/sail Down` a` ./vendor/bin/sail up -d`) použije změny konfigurace.

Toto nastavení umožňuje Laravel Sail poskytovat izolované, ale konfigurovatelné prostředí místního vývoje pomocí Docker, zrcadlení výrobního chování, kdekoli je praktické při zachování pohodlí a flexibility vývojáře.