ENV
Un fichier ENV définit des variables d'environnement au format KEY=VALUE pour la configuration des applications ; c'est l'approche recommandée des apps 12 facteurs.
Objectif
Fournir la manière standard d'injecter la configuration via les variables d'environnement, en séparant configuration et code.
Mécanisme
Chaque ligne est KEY=VALUE ; # marque les commentaires et les lignes vides sont ignorées. Les valeurs sont généralement sans guillemets (à mettre entre guillemets si elles contiennent des espaces). Un shell ou une bibliothèque dotenv les charge dans process.env. Pas de types (tout en chaînes) ni d'imbrication.
Cas d’usage
- Configuration .env de Node.js
- Variables d'environnement de conteneurs Docker
- Injection de secrets CI/CD
- Configuration de développement local
Exemples
- entrée
PORT=3000 DB_URL=postgres://...Outputprocess.env.PORT="3000"Everything is a string
Erreurs courantes
- Committing .env to version control leaks secrets
- Add it to .gitignore and provide a .env.example template
Termes associés
dotenv
dotenv est la bibliothèque et la convention qui chargent les fichiers .env dans les variables d'environnement ; c'est la plus populaire de l'écosystème Node.js et elle externalise la configuration. GLOSSAIRE
INI
INI est un format traditionnel de fichier de configuration qui regroupe les réglages avec des en-têtes [section] et des paires key=value ; il est simple mais non standardisé, et les implémentations diffèrent légèrement. GLOSSAIRE
Properties
Les fichiers Properties de Java utilisent le format CLE=VALEUR ou CLE:VALEUR ; ils sont le format de configuration traditionnel de l'écosystème Java et prennent en charge les échappements Unicode. GLOSSAIRE
YAML
YAML (YAML Ain't Markup Language) est un format de sérialisation de données orienté configuration utilisant l'indentation pour la hiérarchie, prenant en charge commentaires et références, et mieux adapté à l'édition manuelle que JSON. GLOSSAIRE