c't 12/2019
S. 166
Praxis
Django mit Docker
Aufmacherbild
Bild: Albert Hulm

Schlange im Wal

Django-Webanwendungen in Docker-Containern betreiben

Dass sich Django an „Profis mit Deadlines“ richtet, zeigt sich auch, wenn man die Python-Webapps in Docker-Container verpacken will. Dafür müssen nämlich gleich drei Container Hand in Hand arbeiten. Wir zeigen, wie Sie das einrichten, ohne Ihre Deadline zu verpassen.

Fürs Containern von Django-Projekten bietet der DockerHub bisher wenig brauchbare Angebote. Das liegt daran, dass Python-Webanwendungen mit Virtualenv schon seit Langem in eigenen Umgebungen laufen, die Abhängigkeiten und Bibliotheksversionen von denen des Systems trennen. Wer auf dem Webserver aber nicht nur Python-Projekte betreibt, setzt besser auf Docker-Container – auch für Django.

Für Django im Container muss ein Prozess die Anfragen aus dem Internet an Views verteilen. Die Dokumentation betont ausdrücklich, dass Djangos Development-Server dafür nicht gedacht ist. Stattdessen kommt bei Python-Anwendungen das WSGI-Protokoll zum Einsatz. Das implementieren verschiedene WSGI-Server, der Verbreitetste ist uWSGI. Django erzeugt automatisch eine wsgi.py in der Haupt-App, an die uWSGI andockt.

Alle heise-Magazine mit heise+ lesen

3,99 € / Woche

Ein Abo, alle Magazine: c't, iX, Mac & i, Make & c't Fotografie

  • Alle heise-Magazine im Browser und als PDF
  • Alle exklusiven heise+ Artikel frei zugänglich
  • heise online mit weniger Werbung lesen
  • Vorteilspreis für Magazin-Abonnenten
Jetzt unbegrenzt weiterlesen Vierwöchentliche Abrechnung.

Alle Ausgaben freischalten

2,95 € 0,25 € / Woche

Nach Testphase 2,95 € wtl.

  • Zugriff auf alle c't-Magazine
  • PDF-Ausgaben zum Herunterladen
  • Zugriff in der c't-App für unterwegs
Jetzt testen Nach Testphase jederzeit monatlich kündbar.

Ausgabe einmalig freischalten

4,90 € / Ausgabe

Diese Ausgabe lesen – ohne Abobindung

  • Sicher einkaufen im heise shop
  • Magazin direkt im Browser lesen
  • Dauerhaft als PDF behalten