Python: Umgang mit Umgebungsvariablen

Diese Dokumentation ist Teil des Erstellen einer REST-API-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Wie man eine REST-API mit Flask erstellt.

👋 Willkommen bei der Stackhero-Dokumentation!

Stackhero bietet eine einsatzbereite Python-Cloud-Lösung, die zahlreiche Vorteile bietet, darunter:

  • Deployen Sie Ihre Anwendung in Sekundenschnelle mit einem einfachen git push.
  • Verwenden Sie Ihren eigenen Domainnamen und profitieren Sie von der automatischen Konfiguration von HTTPS-Zertifikaten für erhöhte Sicherheit.
  • Genießen Sie beruhigende automatische Backups, Ein-Klick-Updates und eine einfache, transparente und vorhersehbare Preisgestaltung.
  • Erhalten Sie optimale Leistung und robuste Sicherheit dank einer privaten und dedizierten VM.

Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die Python-Cloud-Hosting-Lösung von Stackhero auszuprobieren!

Umgebungsvariablen sind entscheidend für den Schutz sensibler Informationen, wie z.B. Datenbankanmeldedaten oder API-Schlüssel. Es gibt zwei Hauptvorteile bei der Verwendung von Umgebungsvariablen:

  1. Ihre Geheimnisse werden nicht in Ihrem Git-Repository gespeichert, was sicherstellt, dass Unbefugte nicht auf Ihre sensiblen Daten zugreifen können, selbst wenn sie Zugriff auf Ihren Quellcode erhalten.
  2. Sie können unterschiedliche Anmeldedaten für verschiedene Umgebungen verwenden (z.B. Produktion vs. Entwicklung).

Um Umgebungsvariablen zu verwalten, verwenden wir das Modul python-dotenv. Installieren Sie es zuerst, falls noch nicht geschehen:

pip install python-dotenv
pip freeze > requirements.txt

Erstellen Sie dann eine .env-Datei im Stammverzeichnis Ihres Projekts und fügen Sie Ihre Entwicklungsumgebungsvariablen hinzu. Zum Beispiel:

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

Fügen Sie schließlich die .env-Datei zu Ihrer .gitignore hinzu, um die Sicherheit zu gewährleisten:

echo ".env" >> .gitignore

Um auf diese Umgebungsvariablen in Python zuzugreifen, verwenden Sie einfach os.environ.get():

import os

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

Die .env-Datei wird nur für die Entwicklungsumgebung verwendet. Für Staging oder Produktion setzen Sie die Umgebungsvariablen im Stackhero-Dashboard in Ihrer Python-Service-Konfiguration.