.NET
DevOps
Backend

Docker für .NET-Entwickler

Docker
.NET.NET
AspireAspire

Zweitägiger Praxis-Workshop für .NET-Entwickler: Docker-Grundlagen, mehrstufige Dockerfiles, dotnet publish für Container-Images, Volume-Verwaltung, Docker CLI und Aspire-Integration für lokale Orchestrierung.

Docker für .NET-Entwickler

Dauer: 2 Tage

Hands-on-Workshop für .NET-Entwickler, um containerisierte Anwendungen mit Docker zu bauen, zu starten und auszuliefern. Sie lernen, Dockerfiles zu schreiben, dotnet publish für Container-Images zu nutzen, Ausgaben anzupassen, Volumes zu verwenden, die Docker-CLI zu bedienen und mit Aspire zu sehen, wie alles modelliert und konfiguriert wird.

Zielgruppe

  • .NET-Entwickler ohne Container-Erfahrung
  • Teams, die Docker für lokale Entwicklung und Deployment standardisieren

Voraussetzungen

  • Grundkenntnisse in C#/.NET-Projekten
  • Docker Desktop installiert

Lernziele

  • Dockerfiles für .NET-Apps (Build/Publish/Run) schreiben und optimieren
  • dotnet publish für Container-Images nutzen; Publishing und Containereigenschaften anpassen
  • Volumes für Daten/Konfiguration einsetzen und Bind- vs. Named-Volumes verstehen
  • Wichtige Docker-CLI-Kommandos bedienen (build, run, ps, logs, exec, cp, prune)
  • Aspire einsetzen, um Services, Images und Konfiguration für lokale Orchestrierung zu modellieren

Kursinhalt

  1. Docker-Grundlagen
    • Images, Layer, Container; Registry-Basics
    • Multi-Stage-Builds für .NET (restore/build/publish)
  2. Dockerfiles für .NET
    • Basis-Images (SDK vs. ASP.NET Runtime vs. Distroless)
    • Build-Args, Env Vars, EntryPoints, Healthchecks
    • Trimming/AOT für kleinere Images
  3. dotnet publish für Container
    • dotnet publish -c Release -r <rid> --self-contained vs. framework-dependent
    • dotnet publish /p:PublishProfile=DefaultContainer und Container-Properties
    • Image-Name/Tag, Basis-Image, Container-Umgebung anpassen
  4. Volumes und Daten
    • Bind-Mounts vs. Named-Volumes; Config/Secrets abbilden; Persistenz
    • Logs und Datenverzeichnisse nutzen
  5. Docker-CLI in der Praxis
    • docker build, docker run, docker compose, docker ps/logs/exec/cp
    • Tagging, Push/Pull; Aufräumen von Images/Containern
  6. Aspire-Integration
    • Services und Container im AppHost modellieren
    • Environment-Variablen, References, Health Checks verdrahten
    • Konfiguration und Telemetrie im Aspire-Dashboard betrachten
  7. Deployment-Aspekte
    • Image-Optimierung, Caching, Layer-Hygiene
    • Sicherheitsbasics: Non-Root, Secrets, minimale Base-Images

Praktische Übungen

  • Multi-Stage-Dockerfile für eine .NET-Web-API erstellen und lokal ausführen
  • Mit dotnet publish ein Container-Image erzeugen; Image-Name/Tag und Basis-Image anpassen
  • Ein Named-Volume für Daten mounten und Persistenz über Neustarts prüfen
  • Docker-CLI nutzen, um zu bauen, zu starten, Logs zu inspizieren und in einen Container zu exec-en
  • Einen Aspire-AppHost erstellen, der den Service-Container startet, Env Vars setzt und Health Checks exponiert
  • Laufenden Container und Telemetrie im Aspire-Dashboard ansehen

Ergebnisse

  • Eine funktionierende Sammlung von Dockerfiles und Publish-Settings für .NET-Apps
  • Sicherheit im Umgang mit Docker-CLI und Volumes für die lokale Entwicklung
  • Ein Aspire-Modell, das Container-Konfiguration, Health und Telemetrie demonstriert

Interesse am Training?

Wichtiger Hinweis zu Angeboten und Preisen

Informationen, Termine, Verfügbarkeiten und Preise auf dieser Website erfolgen ohne Gewähr und stehen unter Vorbehalt der Bestätigung. Eine Trainingsanfrage begründet noch keinen verbindlichen Vertrag. Details finden Sie in unseren AGB.

Formular wird geladen...

Formular wird geladen...

Das Anfrageformular wird initialisiert. Wenn diese Meldung bestehen bleibt, laden Sie bitte die Seite neu oder kontaktieren Sie uns direkt unter office@cninnovation.com.

AI
An unhandled error has occurred. Reload 🗙