Sto cercando di avvolgere la mia testa intorno al .env
modo di fare di configurazione in laravel 5.Dove devono essere salvati i valori specifici dell'ambiente in un'applicazione Laravel 5?
Qui è la mia storia: Sto convertire un'applicazione laravel 4 esistente a laravel 5. Al momento ho diversi ambienti (local
e production
) e il sistema di configurazione a cascata funziona bene. Ho la mia configurazione dell'applicazione specifica per l'ambiente in cartelle separate sotto app/config
.
La mia applicazione è attualmente distribuita (e sviluppata) in un contenitore Docker. Per costruire per la distribuzione, utilizzo un Dockerfile per creare l'immagine dell'applicazione (basata sul mio ramo master
), che viene quindi trasferito su un repository e attivato sul server di produzione.
Così ora sto provando a convertire la mia configurazione per Laravel 5 e sono un po 'confuso. Tutto quello che ho letto dice che aggiungi i tuoi file .env
al file .gitignore
in modo che non sia incluso nel tuo repository. Capisco i motivi di sicurezza per questo - non commettere chiavi API/password sensibili/qualunque sia il tuo repository. Ma non sono sicuro di come assicurare che il mio file di produzione .env
sia incluso nel mio passaggio di build se non fa parte del repository.
L'idea che avevo era di collocare il mio file di produzione .env
da qualche parte nel mio file system al di fuori del mio ambiente di sviluppo, e quindi copiarlo quando è necessario.
È questa la "migliore pratica" per gestirlo? È così che gli altri lo fanno?
Grazie!
AFAIK si intende copiare direttamente il file sul server. Ho eseguito SSHing nel mio server e aggiornato il file ENV secondo necessità per riflettere le nuove modifiche/requisiti. –
@JamesSpence Sì, è quello che ho pensato anch'io, ma il mio passo di build/deploy è un po 'diverso - non è facile o comodo costruire l'immagine Docker, distribuirla, POI ssh nel server, inserire il contenitore Docker e copiare un file. Ecco perché ho pensato che fosse importante menzionare il fatto che sto facendo questo con Docker. – Kryten
Non ho mai usato Docker prima, ma presumo che tu possa copiare i file in quell'ambiente, giusto?Potrebbe non essere semplice come tirare il repository e andare avanti, ma è solo un altro passo. È quello che devo fare per distribuire i miei file ENV. –