Seminarbeschreibung
Ein geeignetes Container-Image enthält genau die zur Ausführung benötigten Bestandteile und lässt sich nachvollziehbar neu erstellen. Im Seminar wird aus einer vorhandenen ASP.NET-Core-Anwendung ein solches Image entwickelt. Die Übungen behandeln sowohl den Build als auch die späteren Betriebsbedingungen auf einem Linux-Host.
Docker und Podman werden nicht pauschal als austauschbar vorausgesetzt. Gemeinsamkeiten beim Imageformat sowie Unterschiede bei Rootless-Netzwerken, Dateirechten und der Dienstverwaltung werden praktisch herausgearbeitet. Mehrere Dienste werden in einer überschaubaren Laboranwendung verbunden; persistente Daten bleiben vom austauschbaren Programmcontainer getrennt.
Lernziele
- Mehrstufige .NET-Images nachvollziehbar erstellen und betreiben.
- Non-Root-Prozesse, Rootless-Engine, Portfreigaben und Dateirechte unterscheiden.
- Anwendungscontainer mit Datenbank, Netzwerken und persistenten Daten verbinden.
Zielgruppe
.NET-Entwickler, Linux-Administratoren und DevOps-Teams, die Anwendungen containerisieren oder Containerhosts betreuen.
Voraussetzungen
Grundlagen der .NET CLI, Linux-Kommandozeile, Dateirechte und HTTP; eine vorhandene Anwendung muss veröffentlicht werden können. Container-Vorkenntnisse sind hilfreich, aber nicht zwingend.
Seminarinhalte im Überblick
- Images und Buildverfahren
- Sichere Laufzeitkonfiguration
- Mehrere Dienste und persistente Daten
- Podman im Linux-Betrieb
- Imageauswahl und Wartung
1. Images und Buildverfahren
- SDK-, ASP.NET-Runtime- und Runtime-Deps-Images unterscheiden.
- Mehrstufige Dockerfiles, Buildkontext, Wiederverwendung von Schichten und Versionsbindung einsetzen.
- Den SDK-basierten Container-Publish mit einem Dockerfile vergleichen.
2. Sichere Laufzeitkonfiguration
- Nicht privilegierte Benutzer, Dateirechte und Portzuordnung einschließlich Port 8080 prüfen.
- Umgebungswerte, eingebundene Geheimnisse und unveränderliche Programmstände trennen.
- Schreibbare Pfade, schreibgeschützte Dateisysteme und geordnetes Beenden testen.
3. Mehrere Dienste und persistente Daten
- Anwendung, Nginx und PostgreSQL mit Docker Compose verbinden.
- Netze, Namensauflösung, Volumes und die Erreichbarkeit von Abhängigkeiten untersuchen.
- Startreihenfolge von tatsächlicher Betriebsbereitschaft unterscheiden und Wiederanlauf prüfen.
4. Podman im Linux-Betrieb
- Dasselbe OCI-Image mit Podman ausführen und Rootless-Besonderheiten nachvollziehen.
- Benutzerzuordnung, Volumerechte und Netzwerkzugriffe vergleichen.
- Einen Dienst mit Quadlet in einer vorbereiteten systemd-Benutzerumgebung einrichten.
5. Imageauswahl und Wartung
- Schlanke Images nach Diagnosebedarf, nativen Bibliotheken und Globalisierung auswählen.
- Native AOT anhand eines geeigneten Minimal-API-Beispiels auf Einschränkungen bewerten.
- Imageupdates, Schwachstellenbefunde, Wiederaufbau und Rücknahme eines fehlerhaften Images üben.
Praktische Übungen
- Ein mehrstufiges Image bauen und unter einem nicht privilegierten Benutzer starten.
- Eine Anwendung mit Nginx und PostgreSQL über Docker Compose betreiben.
- Ein persistentes Volume nach dem Austausch des Programmcontainers weiterverwenden.
- Das Image unter Rootless-Podman starten und ein Rechteproblem am Volume beheben.
Schulungsumgebung
Arbeitsgrundlage ist .NET 10 LTS mit ASP.NET Core 10 auf einer unterstützten Linux-Version. Verwendet werden zueinander passende stabile Paket- und Werkzeugstände. Die Übungen nutzen ausschließlich abgegrenzte Testdaten und vorbereitete Beispielanwendungen. Vorgesehen sind Linux, Docker Engine mit Compose und eine getrennte Podman-Laborumgebung mit systemd. Der Kunde stellt die vereinbarte Schulungsumgebung bereit; Konten, Berechtigungen, Softwarestände und der erfolgreiche Teststart werden vor Seminarbeginn abgestimmt.
Thematische Einordnung
Docker Compose und ein gezieltes Podman-/Quadlet-Beispiel werden praktisch durchgeführt. Kubernetes-Clusterbetrieb, vollständige AOT-Portierungen und beliebige Compose-Kompatibilität zwischen Engines werden nicht vorausgesetzt.
Weitere Fachseminare und die empfohlene Besuchsreihenfolge enthält die Übersicht der Seminarreihe.
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de -

Paul Goldschmidt
Telefon: + 49 (221) 74740055
E-Mail: paul.goldschmidt@seminar-experts.de
Seminardetails
| Dauer: | 3 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage 09:00 Uhr |
|---|---|
| Preis: |
Öffentlich oder Live Stream: € 1.797 zzgl. MwSt. Inhaus: € 5.100 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | .NET-Entwickler, Linux-Administratoren und DevOps-Teams, die Anwendungen containerisieren oder Containerhosts betreuen. |
| Voraussetzungen: | Grundlagen der .NET CLI, Linux-Kommandozeile, Dateirechte und HTTP; eine vorhandene Anwendung muss veröffentlicht werden können. Container-Vorkenntnisse sind hilfreich, aber nicht zwingend. |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Demonstrationen, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
