Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Mitkä ovat Laravel Sailissa käytetyt yleiset ympäristömuuttujat


Mitkä ovat Laravel Sailissa käytetyt yleiset ympäristömuuttujat


Laravel Sail, Laravelin Dockerin kehitysympäristö, luottaa voimakkaasti ympäristömuuttujiin, jotka on määritelty ensisijaisesti projektin juuressa olevassa `.env` -tiedostossa. Nämä ympäristömuuttujat määrittävät sovelluksen ja sen palvelut, mahdollistaen säiliöiden saumattoman orkesterin ja paikalliseen kehitykseen sopivien asetusten virittämisen.

Laravel Sailissa käytetyt yleiset ympäristömuuttujat voidaan ryhmitellä niiden tarkoituksen mukaan: sovellusmääritykset, tietokannan kokoonpanot, huoltoportit ja sidokset, säilöjen käyttäjän asetukset ja purjekohtaiset mukautukset.

Sovelluksen määritysmuuttujat

- `App_Name`: Määrittää Laravel -sovelluksen nimen.
- `App_env`: Asettaa ympäristötyypin, yleensä" paikallinen "purjehtimaan.
- `App_key`: Base64-koodatu salausavain, jota Laravel käyttää salaus- ja istuntoturvallisuuteen.
- `app_debug`: Boolen -lippu yksityiskohtaisten virheilmoitusten ja virheenkorjausominaisuuksien (` true` tai `false`) sallimiseksi.
- `App_Url`: URL -osoite, jossa sovellukseen pääsee paikallisesti, asetetaan usein` http: // localhost`.

Tietokantayhteysmuuttujat

Tietokantasäiliön (`MySQL` -palvelun) järjestämiseksi Sail käyttää muuttujia, jotka määrittelevät yhteyden MySQL -tietokantasäiliöön:

- `db_connection`: Ilmaisee tietokantaohjaimen, tyypillisesti` mysql`.
- `db_host`: Hostname tietokantapalvelimelle, yleensä MySQL -säiliön nimi, kuten` mysql`.
- `db_port`: MySQL -yhteyden oletusportti, yleensä` 3306`.
- `DB_Database`: Säiliön sisällä käytetyn tietokannan nimi.
- `db_username`: Käyttäjätunnus käyttää tietokantaa.
- `db_password`: tietokannan käyttäjän salasana.

redis -määritys

Purje tukee valinnaisesti Redisiä välimuistissa tai istunnon käsittelyssä. Nämä muuttujat määrittävät Redis -yhteyden:

- `redis_host`: REDIS -palvelimen isäntänimi, usein` redis` vastaamaan Redis -säilöä.
- `redis_password`: redis -salasana, jos sellainen on.
- `redis_port`: Port Redis kuuntelee usein` 6379`.

Service Portin edelleenlähetysmuuttujat

Välttääksesi konfliktit isäntäjärjestelmän yleisten satamien kanssa jo toimivien palvelujen kanssa, SAIL mahdollistaa palvelujensa lähettämien satamien mukauttamisen:

- `eteenpäin_db_port`: Paikallinen koneportti, joka on edelleenlähetetty MySQL: n vakioporttiin 3306 säilössä (esim. Voit asettaa tämän, jos portti 3306 on miehitetty).
- `Forward_redis_port`: Paikallinen portti välitetty Redisin oletusporttiin 6379.
- `eteenpäin_mailhog_port`: Paikallinen portti, joka on edelleenlähetetty MailHog -palveluporttiin, jota käytetään yleensä sähköpostin testaamiseen.
- Muita `eteenpäin_*` Muuttujia on palveluille, kuten PhpMyadmin tai muut purjepalvelut, jos ne on määritetty.

Konttien käyttäjä- ja käyttöoikeusmuuttujat

Purje suorittaa säiliöitä käyttämällä käyttäjää, joka vastaa paikallista isäntäkäyttäjää varmistaakseen, että tiedostojen käyttöoikeudet pysyvät yhdenmukaisina isännän ja säilön välillä. Nämä muuttujat hallitsevat käyttäjätunnuksia:

- `wwwuser`: Asettaa käyttäjätunnuksen säilölle, joka vastaa isäntäkoneen käyttäjätunnusta, varmistaen, että tiedostojen käyttöoikeudet vastaavat.
- `wwwgroup`: Asettaa ryhmän tunnuksen säiliön sisälle vastaamaan isäntää.

purjeen mukauttamismuuttujat

- `app_service`: sallii ensisijaisen Laravel-sovelluspalvelun nimen vaihtamisen` Docker-compose.yml` sisällä. Tämä voi olla hyödyllistä edistyneissä kokoonpanoissa.
- `Sail_Files`: Antaa sinun määrittää ylimääräiset Docker Compose Override -tiedostot, jotka ladataan tavallisten purjetiedostojen rinnalle. Tämä on tarkoitettu purjeympäristön mukauttamiseen tai laajentamiseen.
- `Supervisor_php_command`: Käytetään PHP -startup -komennon mukauttamiseen pää -Laravel -purjehtisäiliön sisällä, hyödyllinen integroidessasi työkaluja, kuten Laravel Octane.
- `Supervisor_php_user`: Asettaa käyttäjän, joka suorittaa PHP: n esimiehen prosessissa säiliön sisällä.

Mail Service -muuttujat

Laravel Sailin mukana tulee MailHog -kontti kehityksen aikana lähetettyjen sähköpostien sieppaamiseksi. Nämä muuttujat määrittävät postiasetukset:

- `Mail_Mailer`: Aseta arvoon` Smtp` tai muu postitusohjain.
- `Mail_host`: Postipalvelimen isäntänimi, yleensä` mailHog`.
- `Mail_port`: SMTP: n portti, yleensä` 1025` MailHogille.
- `Mail_Username` ja` mail_password`: käyttöoikeustiedot tarvittaessa (yleensä jätetty tyhjäksi kehityksessä).

jono- ja välimuistin ohjaimet

Sailin oletus `.env` voi asettaa nämä:

- `queue_connection`: määrittelee jononohjaimen, kuten" synkronointi "," tietokanta "tai` redis`.
- `cache_driver`: Määrittää välimuistin ohjaimen, usein` tiedosto 'tai `redis`.

Muut palveluympäristömuuttujat

- `XDEBUG_CONFIG`: Konfiguroitu automaattisesti purjehtimalla virheenkorjausta varten XDEBUG: lla, asettamalla usein` client_host = host.docker.internal` Macille ja Windowsille.
- `puid` ja` PGID`: Toisinaan räätälöityissä purjekokoonpanoissa asetetaan käyttäjän ja ryhmän tunnukset nimenomaisesti käyttäjän kulutuksen sovittamiseen.

Ympäristömuuttuvien roolien yhteenveto purjeessa

Nämä ympäristömuuttujat, jotka on määritelty enimmäkseen `.env` -tiedostossa, palvelevat:

- Määritä Laravel -sovellusten perusteet (nimi, ympäristö, virheenkorjaustila, URL).
- Kytke Laravel -sovellussäiliö tietokanta- ja välimuistipalveluihin Dockerin sisällä.
- Karttaportit säiliöstä isäntäkoneeseen välttäen paikallisia porttikonflikteja.
- Varmista asianmukaiset käyttäjän ja ryhmän käyttöoikeudet isäntä- ja säilöjärjestelmien välillä.
- Mukauta Laravel -purjeympäristöastiat ja prosessit edistyneen käyttöä varten.

`.Env` tiedostoympäristömuuttujat hallitsevat suoraan Sailin" Docker-compose.yml` -sovelluksessa määriteltyjen säiliöiden käyttäytymistä ja kaikkia pidennettyjä kompositiedostoja, jotka on osoitettu `Sail_Files`. Näiden muuttujien säätäminen ja purjeen käynnistäminen uudelleen (käyttämällä komentoja, kuten `./vendor/bin/sail alas` ja` ./vendor/bin/sail up -d`) soveltaa kokoonpanomuutoksia.

Tämä asennus antaa Laravel Sailille mahdollisuuden tarjota eristetty, mutta konfiguroitava, paikallinen kehitysympäristö Dockerilla, peilata tuotantokäyttäytymistä missä tahansa käytännöllisessä säilyttäen kehittäjien mukavuuden ja joustavuuden.