
Django & Docker
Dockerfile, docker-compose, Multi-Stage-Builds, Volumes, Netzwerke, Entwicklung vs. Produktion
1Welches Basis-Image wird für eine Django-Anwendung in der Produktion empfohlen?
Welches Basis-Image wird für eine Django-Anwendung in der Produktion empfohlen?
Antwort
Das python:3.x-slim-Image wird empfohlen, da es eine Balance zwischen reduzierter Größe und Kompatibilität bietet. Es enthält die wesentlichen Bibliotheken und vermeidet unnötige Abhängigkeiten von vollständigen Images. Alpine-Images sind zwar leichter, können aber Kompatibilitätsprobleme mit einigen kompilierten Python-Bibliotheken (wie psycopg2) verursachen.
2Was ist der Hauptvorteil eines Multi-Stage-Builds für eine Django-Anwendung?
Was ist der Hauptvorteil eines Multi-Stage-Builds für eine Django-Anwendung?
Antwort
Multi-Stage-Builds reduzieren die Größe des finalen Images erheblich, indem sie die Build-Umgebung (mit allen Kompilierungstools) von der Laufzeitumgebung trennen. Abhängigkeiten werden in einer ersten Stufe kompiliert, dann werden nur die notwendigen Dateien in das finale Image kopiert, wobei Build-Tools, temporäre Dateien und Caches ausgeschlossen werden.
3Wie stellt man in einer docker-compose.yml sicher, dass der Django-Container wartet, bis PostgreSQL bereit ist, Verbindungen anzunehmen?
Wie stellt man in einer docker-compose.yml sicher, dass der Django-Container wartet, bis PostgreSQL bereit ist, Verbindungen anzunehmen?
Antwort
Die depends_on-Direktive allein garantiert nur den Start des Containers, nicht die Verfügbarkeit des Dienstes. Um zu warten, bis PostgreSQL tatsächlich bereit ist, muss man ein wait-for-it.sh-Skript oder dockerize verwenden, oder die service_healthy-Bedingung mit einem Healthcheck. Dieser Ansatz verhindert Verbindungsfehler beim Start der Django-Anwendung.
Was ist der Unterschied zwischen COPY und ADD in einem Dockerfile für eine Django-Anwendung?
Wie optimiert man das Docker-Layer-Caching bei der Installation von Python-Abhängigkeiten?
+17 Interview-Fragen
Weitere Django-Interviewthemen
Python-Grundlagen
Objektorientiertes Python
Django-Grundlagen
Django Models - Grundlagen
Django Views
Django-Templates
Django-Formulare
Erweiterte QuerySets
Django-Authentifizierung
Django-Middleware
Django Admin
Django REST Framework
Django-Signale
Datei-Upload
Django Caching
Django-Sessions
Django E-Mail
Django-Testing
Django-Sicherheit
Django-Deployment
Fortgeschrittenes Django ORM
Django-Performance
Django & Celery
Django Channels
Django & GraphQL
Django im Microservices-Ökosystem
Benutzerdefinierte Django-Befehle
Django-Internationalisierung
Django Design Patterns
Django Async & ASGI
Settings & Produktionskonfiguration
Observability & Monitoring
Meistere Django für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten