Node.js: Utiliser la bibliothèque dotenv

Cette documentation fait partie du guide Gérer les secrets. Consultez le guide complet ici : Comment gérer les secrets avec Node.js.

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose un environnement Node.js cloud prêt à l'emploi, conçu pour accélérer vos déploiements :

  • Déployez en production en quelques secondes grâce à un simple git push. Aucun outil supplémentaire ni configuration manuelle n'est nécessaire.
  • Utilisez votre propre nom de domaine et profitez de certificats HTTPS automatiques, pour sécuriser votre application sans configuration additionnelle.
  • Sauvegardes automatiques, mises à jour en un clic et tarification prévisible vous permettent de vous concentrer sur le développement de vos fonctionnalités, pendant que Stackhero gère l'infrastructure.
  • Basé sur une infrastructure privée et dédiée pour garantir des performances constantes et une sécurité renforcée.

Gagnez du temps et simplifiez la gestion opérationnelle : votre application peut être en ligne sur l'hébergement Node.js cloud de Stackhero en seulement quelques minutes.

Dans des projets réels, il est fréquent de devoir gérer plusieurs secrets. Par exemple, la connexion à une base de données nécessite souvent un hostname, un nom d'utilisateur et un mot de passe.

Gérer un seul secret est simple, mais jongler avec plusieurs devient vite compliqué. Imaginez démarrer votre application avec une commande comme celle-ci :

POSTGRESQL_HOST=<XXXXXX>.stackhero-network.com POSTGRESQL_USER=admin POSTGRESQL_PASSWORD=myPassword node app.js

Cela devient rapidement difficile à lire et à maintenir. En production, vous aurez probablement encore plus de variables, ce qui rend cette approche peu pratique.

C'est là que la bibliothèque dotenv intervient.

Avec dotenv, vous pouvez stocker vos secrets dans un fichier séparé appelé .env.

Pour commencer, installez la bibliothèque dotenv en lançant :

npm install dotenv

Ensuite, créez un fichier .env pour y placer vos variables :

POSTGRESQL_HOST=<XXXXXX>.stackhero-network.com
POSTGRESQL_USER=admin
POSTGRESQL_PASSWORD=myPassword

Pour sécuriser vos secrets, veillez à ce que votre fichier .env ne soit pas ajouté à votre dépôt Git. Pour cela, ajoutez-le à votre fichier .gitignore :

echo ".env" >> .gitignore

Enfin, chargez la bibliothèque dotenv en haut de votre fichier app.js :

require("dotenv").config();

Avec cette configuration, lorsque vous lancez votre application avec node app.js, dotenv lit automatiquement votre fichier .env sur votre machine de développement. En production, vous n'avez pas besoin du fichier .env. Les variables d'environnement sont directement récupérées depuis la configuration de votre service Node.js, que vous pouvez gérer via le tableau de bord Stackhero.