Python: Gestione delle variabili d'ambiente

Questa documentazione fa parte della guida Creazione di una REST API. Consulta la guida completa qui: Guida passo-passo per costruire una REST API con Flask in Python.

👋 Benvenuto nella documentazione di Stackhero!

Stackhero offre una soluzione Python cloud pronta all'uso, progettata per semplificare il processo di deployment:

  • Distribuisci la tua applicazione in produzione in pochi secondi con un semplice git push.
  • Utilizza il tuo nome di dominio, con configurazione automatica del certificato HTTPS per connessioni sicure gestite direttamente da noi.
  • Affidati a backup automatici, aggiornamenti con un clic e prezzi prevedibili, così puoi concentrarti sul tuo codice invece che sulla gestione dell'infrastruttura.
  • Approfitta di elevate prestazioni e sicurezza su un'infrastruttura privata e dedicata. Il tuo ambiente è isolato e protetto.

Risparmia tempo e semplifica il tuo workflow: il tuo codice può essere operativo con il Python cloud hosting di Stackhero in soli 5 minuti.

Le variabili d'ambiente aiutano a proteggere segreti come credenziali di database o chiavi API. Il loro utilizzo mantiene i dati sensibili fuori dal codice sorgente e dalla cronologia Git, e facilita la gestione di impostazioni diverse per ogni ambiente.

Per gestire le variabili d'ambiente, potete utilizzare il modulo python-dotenv. Se avete saltato il passaggio di installazione precedente, potete installarlo ora:

pip install python-dotenv
pip freeze > requirements.txt

Create un file .env nella root del progetto e aggiungete le variabili d'ambiente di sviluppo:

ENV="development"
DATABASE_PASSWORD="secretPassword"
THIRD_API_PRIVATE_KEY="secretKey"

Aggiungete .env al vostro .gitignore per evitare che venga inserito in Git:

echo ".env" >> .gitignore

Potete accedere a queste variabili in Python tramite os.environ.get():

import os

print(os.environ.get('ENV'))

Il file .env è solo per lo sviluppo. In produzione o staging, potete impostare le variabili d'ambiente direttamente dalla dashboard Stackhero, nella configurazione del vostro servizio Python.