Skip to content

Comment lire les variables d'environnement depuis Node.js

Le module principal process de Node.js fournit la propriété env qui héberge toutes les variables d'environnement définies au moment du lancement du processus.

Le code ci-dessous exécute app.js et définit USER_ID et USER_KEY.

bash
USER_ID=239482 USER_KEY=foobar node app.js

Cela passera à l'utilisateur USER_ID comme 239482 et USER_KEY comme foobar. Ceci est adapté pour les tests, cependant pour la production, vous configurerez probablement des scripts bash pour exporter des variables.

NOTE

process ne nécessite pas de "require", il est automatiquement disponible.

Voici un exemple qui accède aux variables d'environnement USER_ID et USER_KEY, que nous avons définies dans le code ci-dessus.

javascript
process.env.USER_ID // "239482
process.env.USER_KEY // "foobar

De la même manière, vous pouvez accéder à n'importe quelle variable d'environnement personnalisée que vous avez définie. Node.js 20 a introduit un support expérimental pour les fichiers .env.

Maintenant, vous pouvez utiliser l'option --env-file pour spécifier un fichier d'environnement lors de l'exécution de votre application Node.js. Voici un exemple de fichier .env et comment accéder à ses variables en utilisant process.env.

bash
.env file
PORT=3000

Dans votre fichier js

javascript
process.env.PORT // 3000

Exécutez le fichier app.js avec les variables d'environnement définies dans le fichier .env.

js
node --env-file=.env app.js

Cette commande charge toutes les variables d'environnement du fichier .env, les rendant disponibles à l'application sur process.env. De plus, vous pouvez passer plusieurs arguments --env-file. Les fichiers suivants remplacent les variables préexistantes définies dans les fichiers précédents.

bash
node --env-file=.env --env-file=.development.env app.js

NOTE

Si la même variable est définie dans l'environnement et dans le fichier, la valeur de l'environnement a priorité.