Node.js: De dotenv-library gebruiken

Deze documentatie maakt deel uit van de Geheimen beheren-gids. Bekijk de volledige gids hier: Hoe u geheimen beheert met Node.js.

👋 Welkom bij de Stackhero-documentatie!

Stackhero biedt een kant-en-klare Node.js cloud omgeving waarmee u sneller kunt werken:

  • Zet uw applicatie in productie in enkele seconden met een simpele git push. Geen extra tools of handmatige configuratie nodig.
  • Gebruik uw eigen domein en profiteer van automatische HTTPS-certificaten, zodat uw applicatie veilig is zonder extra instellingen.
  • Automatische back-ups, one-click updates en voorspelbare prijzen zorgen ervoor dat u zich kunt richten op het ontwikkelen van features, terwijl Stackhero de infrastructuur voor u beheert.
  • Gebouwd op private, dedicated infrastructuur voor consistente prestaties en sterke beveiliging.

Bespaar tijd en verminder operationele lasten: uw applicatie draait binnen enkele minuten op Stackhero's Node.js cloud hosting.

In praktijkprojecten moet u vaak meerdere geheimen beheren. Bijvoorbeeld: voor een databaseverbinding heeft u meestal een hostname, gebruikersnaam en wachtwoord nodig.

Eén geheim beheren is eenvoudig, maar meerdere tegelijk wordt al snel onoverzichtelijk. Stel u voor dat u uw applicatie start met een commando als dit:

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

Dit wordt snel onleesbaar en lastig te onderhouden. In productie zijn er vaak nog meer variabelen nodig, waardoor deze aanpak niet praktisch is.

Daar komt de dotenv-library van pas.

Met dotenv kunt u geheimen opslaan in een apart bestand genaamd .env.

Om te beginnen installeert u de dotenv-library met:

npm install dotenv

Maak vervolgens een .env-bestand aan om uw variabelen in op te slaan:

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

Om uw geheimen te beschermen, zorgt u ervoor dat uw .env-bestand niet aan uw Git-repository wordt toegevoegd. Dit doet u door het bestand toe te voegen aan uw .gitignore:

echo ".env" >> .gitignore

Laad tot slot de dotenv-library bovenaan uw app.js-bestand:

require("dotenv").config();

Met deze setup leest dotenv automatisch uw .env-bestand uit wanneer u uw applicatie start met node app.js op uw ontwikkelmachine. In productie heeft u het .env-bestand niet nodig. De omgevingsvariabelen worden direct opgehaald uit de configuratie van uw Node.js-service, die u beheert via het Stackhero-dashboard.