
Docker & Containerization
Dockerfile, docker-compose, Multi-Stage-Builds, Container-Optimierung, Umgebungskonfiguration
1Was ist die Hauptaufgabe eines Dockerfile in einer .NET-Anwendung?
Was ist die Hauptaufgabe eines Dockerfile in einer .NET-Anwendung?
Antwort
Das Dockerfile definiert die Anweisungen zur Erstellung eines reproduzierbaren Docker-Images, das die .NET-Anwendung und ihre Abhängigkeiten enthält. Es gibt das Basis-Image, die Build-Befehle, die zu kopierenden Dateien und den Ausführungsbefehl an. Dadurch wird sichergestellt, dass die Anwendung in allen Umgebungen identisch ausgeführt wird.
2Welches Basis-Image wird für eine ASP.NET Core-Anwendung in der Produktion empfohlen?
Welches Basis-Image wird für eine ASP.NET Core-Anwendung in der Produktion empfohlen?
Antwort
Das Image mcr.microsoft.com/dotnet/aspnet ist für die Ausführung von ASP.NET Core-Anwendungen in der Produktion optimiert. Es enthält nur die notwendige .NET-Laufzeitumgebung, ohne SDK oder Build-Tools, was die Größe des finalen Images erheblich reduziert und die Sicherheit verbessert. Für den Build verwenden Sie mcr.microsoft.com/dotnet/sdk in einem Multi-Stage-Build.
3Was ist ein Multi-Stage-Build in einem .NET-Dockerfile?
Was ist ein Multi-Stage-Build in einem .NET-Dockerfile?
Antwort
Ein Multi-Stage-Build verwendet mehrere FROM-Anweisungen in einem Dockerfile, um Zwischen-Images zu erstellen. Die erste Stufe verwendet das SDK-Image zum Kompilieren der Anwendung, während die finale Stufe das leichtere Runtime-Image verwendet und nur die kompilierten Binärdateien kopiert. Dies reduziert die Größe des finalen Images um mehrere hundert MB, indem Build-Tools und Quelldateien ausgeschlossen werden.
Warum sollte man die .csproj-Datei vor dem restlichen Quellcode in einem Dockerfile kopieren?
Welcher Befehl erstellt ein Docker-Image aus einem Dockerfile?
+13 Interview-Fragen
Weitere .NET-Interviewthemen
C#-Grundlagen
LINQ & Delegates
C#-Sprachgrundlagen
ASP.NET Core Grundlagen
ASP.NET Core Request-Lebenszyklus
Configuration & Settings
Anwendungslebenszyklus
Dependency Injection
Entity Framework Core
Minimal APIs
Web-API-Entwicklung
Async in ASP.NET Core
Authentication & Authorization
HttpClient & Networking
JSON-Serialisierung
Entity Framework Core fortgeschritten
Erweiterte C#-Funktionen
Clean Architecture
Logging, Monitoring & Observability
Unit-Tests & xUnit
Integrationstests
NuGet Package Management
Memory Management & GC
Reaktive Programmierung
Async/await & Patterns
.NET Design Patterns
Performance-Optimierung
Sicherheit & Best Practices
SignalR & Echtzeit
Microservices-Architektur
Meistere .NET für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten