Edocti
Fortgeschrittene technische Ausbildung für den modernen Softwareingenieur
Edocti Training

Wesentliche Flask-Entwicklung mit Docker

Fortgeschritten
14 h
4.6 (328 Bewertungen)
Wesentliche Flask-Entwicklung mit Docker

Flask + Docker Workshop: In 2 intensiven Tagen eine komplette Web‑App bauen und containerisieren.

Hands‑on mit Flask Routes, Templates, Forms und Datenbank‑Integration.

Services mit Docker containerisieren und Multi‑Container‑Setups aufbauen.

Praktische Erfahrung sammeln durch ~70% Labs mit Docker‑Deployment.

Nutzen: Produktionsreife Python‑Webapps in Containern schnell starten.

Für wen: gedacht für Personen mit Python‑Grundlagen, die in Web/DevOps gehen.

Mit optionalen Themen zu Skalierung, CI/CD und Cloud Deployment.

Curriculum

Tag 1 – Grundlagen & Projekt‑Scaffolding
  • Flask Designentscheidungen: WSGI, Request/Response Cycle, Blueprints, Jinja2 vs. API‑only
  • Repository‑Layout (src/), Config über Environment Variables, .env‑Handling; Secrets‑Basics
  • App‑Factory‑Pattern; Blueprints für Modularität; CLI mit flask CLI
  • Templates, statische Dateien, WTForms (optional) und CSRF‑Schutz
  • REST‑Endpoints und OpenAPI (apispec/flasgger) — Request‑Validierung (pydantic oder marshmallow)
  • Docker Multi‑Stage Image; Compose für Dev (Hot Reload) vs. Prod
  • Hands‑on Lab: Projekt scaffolden, in Docker starten, minimale Page + JSON‑API
Tag 1 – Datenebene & Auth
  • SQLAlchemy ORM & Session‑Muster; Models, Beziehungen, Migrationen mit Alembic
  • JWT‑Authentifizierung (Access/Refresh), Sessions vs. Tokens; Password Hashing
  • CORS und CSRF — wann und wie; rollenbasierter Zugriff (kurz)
  • Hands‑on Lab: Models/Migrationen, Auth‑Endpoints, Seed‑Daten
Tag 2 – Betrieb, Performance & Async‑Workloads
  • Gunicorn Prozessmodell; Worker/Threads; Timeouts und Keep‑Alive; Nginx Reverse Proxy (optional)
  • Caching (Flask‑Caching mit Redis); idempotente Endpoints und Pagination
  • Background‑Jobs mit Celery + Redis; Retries, Time Limits, Result Backends
  • WebSockets mit Flask‑Sock (optional) und Server‑Sent Events (SSE)
  • Observability: strukturiertes Logging, Request‑IDs, Basis‑Metriken; Health‑ und Readiness‑Endpoints
  • Hands‑on Lab: Prod‑Image containerisieren, Celery Worker/Beat hinzufügen, Caching für langsamen Endpoint
Tag 2 – Qualität, Tests & CI
  • pytest‑Fixtures für App, DB und Client; factory_boy/Faker für Daten
  • Integrationstests in Docker Compose; Coverage und parallele Läufe
  • Pre‑commit Hooks (ruff/black); Typprüfungen (mypy, optional)
  • CI‑Skizze (GitHub Actions): Build, Test, Image Push; .env und Secrets‑Handling
  • Wrap‑up: Deployment‑Optionen (Container Registry, ECS/Kubernetes), Next Steps

Optionale Module

Optional – API Gateways & Auth‑Provider
  • OAuth2/OIDC mit externen Providern (Auth0/Keycloak)
  • Rate Limiting und API Keys (Flask‑Limiter)

Kursablauf

  • Part 1: 09:00–10:30
  • Break: 10:30–10:45
  • Part 2: 10:45–12:15
  • Lunch break: 12:15–13:15
  • Part 3: 13:15–15:15
  • Break: 15:15–15:30
  • Part 4: 15:30–17:30