Node.js: Utilizzare la libreria dotenv

Questa documentazione fa parte della guida Gestire i segreti. Consulta la guida completa qui: Come gestire i segreti con Node.js.

👋 Benvenuto nella documentazione di Stackhero!

Stackhero offre un ambiente Node.js cloud pronto all'uso, progettato per aiutarti a lavorare più velocemente:

  • Distribuisci in produzione in pochi secondi con un semplice git push. Non sono necessari strumenti aggiuntivi o configurazioni manuali.
  • Utilizza il tuo dominio e approfitta dei certificati HTTPS automatici, mantenendo la tua applicazione sicura senza configurazioni extra.
  • Backup automatici, aggiornamenti con un clic e prezzi prevedibili ti permettono di concentrarti sulle funzionalità, mentre Stackhero gestisce l'infrastruttura per te.
  • Basato su infrastruttura privata e dedicata per prestazioni costanti e sicurezza elevata.

Risparmia tempo e riduci la complessità operativa: puoi avere la tua applicazione in esecuzione su l'hosting Node.js cloud di Stackhero in pochi minuti.

Nei progetti reali, spesso è necessario gestire più segreti. Ad esempio, la connessione a un database può richiedere hostname, username e password.

Gestire un solo segreto è semplice, ma gestirne diversi può diventare rapidamente complicato. Immaginate di avviare l'applicazione con un comando come questo:

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

Questo approccio diventa presto difficile da leggere e mantenere. In produzione, potreste aver bisogno di ancora più variabili, rendendo questa soluzione poco pratica.

Qui entra in gioco la libreria dotenv.

Con dotenv, potete conservare i segreti in un file separato chiamato .env.

Per iniziare, installate la libreria dotenv eseguendo:

npm install dotenv

Successivamente, create un file .env per inserire le vostre variabili:

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

Per mantenere i vostri segreti al sicuro, assicuratevi che il file .env non venga aggiunto al repository Git. Potete farlo aggiungendolo al file .gitignore:

echo ".env" >> .gitignore

Infine, caricate la libreria dotenv all'inizio del file app.js:

require("dotenv").config();

Con questa configurazione, quando avviate l'applicazione con node app.js, dotenv leggerà automaticamente il file .env sulla vostra macchina di sviluppo. In produzione, non è necessario il file .env: le variabili d'ambiente vengono lette direttamente dalla configurazione del servizio Node.js, che potete gestire tramite la dashboard di Stackhero.