Eine Flask-Anwendung ist erst produktionsreif, wenn Build, Konfiguration, WSGI-Server, Reverse Proxy, TLS, Secrets, Migrationen und Rückfallweg als zusammenhängender Betriebsprozess funktionieren.
Das Seminar führt von der installierbaren Anwendung über ein gehärtetes Container-Image bis zu einem kontrollierten Rollout. Worker-Modell, Proxy-Vertrauen und Zustandsprüfungen werden nicht als Rezept, sondern anhand messbarer Anforderungen konfiguriert.
Inhaltsübersicht
- Paketstruktur und interne Abhängigkeiten
- Konfigurationsstrategie für Entwicklung, Test und Produktion
- Produktionsbetrieb mit WSGI-Servern
- Reverse Proxy, TLS und Proxy-Vertrauen
- Container-Image und reproduzierbare Laufzeit
- Secrets, Umgebungswerte und Betriebsparameter
- Health Checks, Migrationen und Rollback
- Strukturiertes Logging und Korrelationskennungen
- Metriken, Tracing und Anwendungsdiagnose
- Praxisprojekt und Wissenssicherung
Lernziele
- Einen geeigneten WSGI-Server und ein passendes Worker-Modell konfigurieren.
- Reverse Proxy, TLS und Forwarded Header sicher behandeln.
- Ein kleines, nicht privilegiertes Container-Image erstellen.
- Secrets und Umgebungsparameter kontrolliert bereitstellen.
- Health Checks, Migrationen, Rollout und Rollback praktisch absichern.
Zielgruppe
Flask-Entwickler, Administratoren, DevOps- und Plattformteams, die Anwendungen reproduzierbar und sicher in Produktion bringen.
Voraussetzungen
Sichere Flask-Grundlagen, Linux- beziehungsweise Servergrundkenntnisse und ein grundlegendes Verständnis von HTTP und Containern.
Seminarinhalte
1. Paketstruktur und interne Abhängigkeiten
Module werden so angeordnet, dass Importzyklen, globale Zustände und unklare Verantwortlichkeiten vermieden werden.
- Schritt 1: Anwendungspaket, Konfiguration, Blueprints, Services, Modelle und Tests getrennt strukturieren.
- Schritt 2: Öffentliche Schnittstellen über __init__-Module bewusst begrenzen.
- Schritt 3: Abhängigkeitsrichtung festlegen und zyklische Importe durch Factory- oder Interface-Muster auflösen.
- Schritt 4: Paket installierbar machen und Importverhalten in einer frischen Umgebung prüfen.
2. Konfigurationsstrategie für Entwicklung, Test und Produktion
Konfiguration wird früh geladen, validiert und nach Sensitivität sowie Umgebung getrennt.
- Schritt 1: Nicht geheime Defaults versionieren und umgebungsspezifische Werte darüberlegen.
- Schritt 2: Verschachtelte Umgebungsvariablen und Präfixe konsistent verwenden.
- Schritt 3: Geheimnisse aus Dateien oder Secret Stores laden, ohne sie zu protokollieren.
- Schritt 4: Startprüfung für Pflichtwerte, Datentypen und widersprüchliche Optionen implementieren.
3. Produktionsbetrieb mit WSGI-Servern
Der Entwicklungsserver wird durch einen belastbaren WSGI-Server mit passendem Worker-Modell ersetzt.
- Schritt 1: Anwendungsimport beziehungsweise Factory-Aufruf für den Server eindeutig konfigurieren.
- Schritt 2: Prozess-, Thread- und asynchrone Worker nach Lastprofil auswählen.
- Schritt 3: Timeouts, Workeranzahl, Max-Requests und Graceful Shutdown festlegen.
- Schritt 4: Start, Reload, Absturz und kontrolliertes Herunterfahren unter Last prüfen.
4. Reverse Proxy, TLS und Proxy-Vertrauen
Externe Verbindungen werden am HTTP-Server terminiert und vertrauenswürdige Weiterleitungsinformationen korrekt behandelt.
- Schritt 1: Reverse-Proxy-Pfad, Host, Protokoll und Clientadresse als Datenfluss dokumentieren.
- Schritt 2: Forwarded Header nur für die bekannte Anzahl vertrauenswürdiger Proxies auswerten.
- Schritt 3: TLS, HSTS, Größenlimits und statische Dateien am vorgeschalteten Server konfigurieren.
- Schritt 4: Direktzugriff, gefälschte Header und falsche Präfixe mit Integrationstests prüfen.
5. Container-Image und reproduzierbare Laufzeit
Die Anwendung wird als kleines, nicht privilegiertes und reproduzierbares OCI-Image bereitgestellt.
- Schritt 1: Build- und Laufzeitabhängigkeiten trennen und einen festen Basisstand wählen.
- Schritt 2: Anwendung als Paket installieren und Build-Cache sinnvoll nutzen.
- Schritt 3: Nicht als root ausführen, Schreibpfade begrenzen und Konfiguration erst zur Laufzeit injizieren.
- Schritt 4: Image lokal, in der CI und mit schreibgeschütztem Dateisystem testen.
6. Secrets, Umgebungswerte und Betriebsparameter
Geheime und veränderliche Werte werden außerhalb des Images verwaltet und beim Start geprüft.
- Schritt 1: Schlüssel, Datenbankzugänge und Provider-Credentials inventarisieren.
- Schritt 2: Secret-Dateien oder Secret-Store-Anbindung mit minimalen Dateirechten konfigurieren.
- Schritt 3: Rotation vorbereiten und mehrere gültige Schlüssel während eines Übergangs unterstützen.
- Schritt 4: Fehlende, abgelaufene oder versehentlich protokollierte Secrets erkennen.
7. Health Checks, Migrationen und Rollback
Bereitstellungen werden mit Zustandsprüfungen, kontrollierten Schemaänderungen und einem Rückweg abgesichert.
- Schritt 1: Liveness, Readiness und fachliche Abhängigkeiten getrennt definieren.
- Schritt 2: Datenbankmigrationen als eigenen, einmaligen Deployment-Schritt ausführen.
- Schritt 3: Rolling-, Blue-Green- oder einfache Austauschstrategie passend zur Plattform wählen.
- Schritt 4: Fehlgeschlagene Version anhand von Metriken erkennen und Rollback praktisch durchführen.
8. Strukturiertes Logging und Korrelationskennungen
Protokolle werden so gestaltet, dass technische Abläufe und einzelne Requests zuverlässig nachvollziehbar bleiben.
- Schritt 1: Logger-Hierarchie, Level und Handler zentral konfigurieren.
- Schritt 2: Request-, Benutzer- und Korrelationskennung als strukturierte Felder ergänzen.
- Schritt 3: Sensible Daten, Tokens und vollständige Request-Körper konsequent filtern.
- Schritt 4: Logausgabe für Entwicklung und zentrale Sammlung getrennt testen.
9. Metriken, Tracing und Anwendungsdiagnose
Latenz, Durchsatz, Fehler und Abhängigkeiten werden messbar gemacht, ohne unnötige Kardinalität zu erzeugen.
- Schritt 1: Golden Signals und fachliche Kennzahlen für die Anwendung festlegen.
- Schritt 2: Metriken an Request-Grenzen und kritischen Services erfassen.
- Schritt 3: Trace-Kontext über HTTP-, Datenbank- und Queue-Grenzen weitergeben.
- Schritt 4: Dashboards anhand realer Betriebsfragen statt dekorativer Diagramme strukturieren.
Praxisprojekt
Eine Beispielanwendung wird als Paket und Container gebaut, hinter einem Reverse Proxy betrieben und mit Health Checks versehen. Ein Schemawechsel sowie ein fehlgeschlagener Rollout werden einschließlich Rückkehr zur vorherigen Version geübt.
Methodik
Kurze fachliche Einordnungen wechseln mit Demonstrationen, geführten Umsetzungen, Fehleranalysen und eigenständigen Übungen. Jede größere Änderung wird durch einen Test, eine Diagnose oder eine betriebliche Prüfroutine abgesichert. Die Arbeitsstände werden schrittweise zu einem durchgängigen Beispielprojekt zusammengeführt.
Fachbereichsleitung / Trainerteam / Ansprechpartner
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de -

Paul Goldschmidt
Telefon: + 49 (221) 74740055
E-Mail: paul.goldschmidt@seminar-experts.de
Seminardetails
| Dauer: | 3 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage: 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.797 zzgl. MwSt. Inhaus: € 5.100 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Flask-Entwickler, Administratoren, DevOps- und Plattformteams, die Anwendungen reproduzierbar und sicher in Produktion bringen. |
| Voraussetzungen: | Sichere Flask-Grundlagen, Linux- beziehungsweise Servergrundkenntnisse und ein grundlegendes Verständnis von HTTP und Containern. |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Demonstrationen, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
