Schulungsübersicht
Einleitung
- Einführung in fortgeschrittene Docker-Konzepte und Workflows
- Wiederholung der Prinzipien und Anwendungsfälle der Containerisierung
- Docker-Terminologie und Kernkomponenten
- Überblick über die Kursziele und die Praxisumgebung
Übersicht über Docker-Funktionen und Architektur
- Docker-Engine und ihre Komponenten
- Docker-Client, Daemon, Images, Container und Registrys
- Docker-Architektur und Container-Lebenszyklus
- Docker Hub und private Registrys
- Docker-CLI-Grundlagen für fortgeschrittene Benutzer
- Verwalten von Docker-Ressourcen und Konfigurationen
Docker einrichten
- Installation der Docker Community Edition
- Konfiguration der Docker-Umgebung
- Prüfung der Docker-Installation
- Konfiguration von Docker für Entwicklung und Testing
- Verwaltung der Docker-Konfiguration und des Speichers
- Einführung in die Fehlerbehebung der Docker-Umgebung
Erstellen eigener Docker-Images
- Verstehen von Docker-Images und Ebenen
- Schreiben effektiver Dockerfiles
- Dockerfile-Anweisungen und bewährte Praktiken
- Verwalten des Build-Kontexts
- Aufbauen und Kennzeichnen von Images
- Verwendung von
.dockerignore - Optimierung der Image-Größe und der Build-Leistung
- Verwaltung von Image-Versionen und Tags
- Mehrstufige Docker-Builds
- Veröffentlichen von Images in einer Container-Registry
Ausführen mehrstufiger Docker-Anwendungen mit Docker Compose
- Einführung in Docker Compose
- Definieren von Diensten mit Compose-Dateien
- Konfigurieren von Netzwerken und Volumes
- Verwalten von Umgebungsvariablen
- Dienstabhängigkeiten und Startreihenfolge
- Ausführen und Skalieren mehrerer Dienste
- Aufbauen von Anwendungsbildern mit Compose
- Verwalten der Anwendungskonfiguration
- Fehlerbehebung in Mehrfachcontainer-Anwendungen
- Bewährte Praktiken für Compose
Die Herausforderungen beim Bereitstellen vieler Docker-Anwendungen
- Verwalten von Containern über mehrere Hosts hinweg
- Skalierung und Verfügbarkeit von Anwendungen
- Dienstentdeckung
- Lastverteilung
- Konfigurations- und Geheimnisverwaltung
- Herausforderungen beim persistenten Speicher
- Überwachung und Protokollierung im großen Maßstab
- Rolling Updates und Anwendungsbereitstellung
- Wiederherstellung von Container- und Host-Ausfällen
Wie Container-Orchestrierung Ihnen hilft, die Kontrolle zu behalten
- Einführung in die Container-Orchestrierung
- Vorteile und Einschränkungen der Orchestrierung
- Vergleich von Docker Swarm, Kubernetes und anderen Lösungen
- Zeitplanung und Arbeitslastverwaltung
- Dienstentdeckung und Netzwerk
- Skalierung und Selbstheilung von Anwendungen
- Rolling Deployments und Rollbacks
- Ressourcenverwaltung und Arbeitslastisolierung
- Auswahl einer geeigneten Orchestrierungsplattform
Kubernetes in der Praxis
- Kubernetes-Architektur und Kernkomponenten
- Pods, Nodes und Clusters
- Deployments und ReplicaSets
- Dienste und Dienstentdeckung
- ConfigMaps und Secrets
- Namespaces und Ressourcenorganisation
- Skalierung von Anwendungen
- Rolling Updates und Rollbacks
- Kubernetes-Netzwerkgrundlagen
- Persistenter Speicher
- Gesundheitschecks und Anwendungszuverlässigkeit
- Bereitstellung von Docker-Anwendungen in Kubernetes
- Fehlerbehebung von Kubernetes-Arbeitslasten
Fortgeschrittenes Docker-Netzwerken
- Docker-Netzwerkarchitektur
- Bridge-, Host-, Overlay- und andere Netzwerk-Treiber
- Kommunikation zwischen Containern
- Kommunikation zwischen Containern und externen Systemen
- Benutzerdefinierte Docker-Netzwerke
- Netzwerkisolierung
- Dienstentdeckung
- Port-Veröffentlichung und -Exposition
- Netzwerken in Mehrfachhost-Umgebungen
- Fehlerbehebung im Docker-Netzwerk
Docker-Sicherheit
- Docker-Sicherheitsgrundlagen
- Containerisolierung und Sicherheitsgrenzen
- Ausführen von Containern mit geeigneten Berechtigungen
- Verwaltung von Benutzern und Berechtigungen in Containern
- Linux-Fähigkeiten und Sicherheitskontrollen
- Absicherung von Docker-Images
- Schwachstellenanalyse von Images
- Sichere Verwaltung von Secrets
- Absicherung von Docker-Registrys
- Netzwerksicherheit und Isolierung
- Sicherheit des Docker-Daemons
- Bewährte Praktiken für die Container-Sicherheit
Einrichten einer kontinuierlichen Integrations-Arbeitsweise für Docker-Anwendungen
- Einführung in CI für containerisierte Anwendungen
- Automatisches Erstellen von Docker-Images
- Automatisiertes Testen von Docker-Images und Containern
- Tagging und Versionsverwaltung von Images
- Integration der Quellcodeverwaltung in Docker-Builds
- Automatisierte Schwachstellenanalyse von Images
- Veröffentlichen von Images in Registrys
- Verwaltung von Build-Artefakten
- Einführen automatisierter Qualitätsprüfungen
- Gestaltung einer wiederholbaren Docker-CI-Pipeline
Integrieren von Docker-Anwendungen in einen bestehenden Workflow
- Integration von Docker in bestehende Entwicklungs-Workflows
- Containerisierung bestehender Anwendungen
- Integration von Docker in CI/CD-Plattformen
- Verwaltung von Entwicklungs-, Test-, Staging- und Produktionsumgebungen
- Automatisierte Bereitstrategien
- Konfigurationsverwaltung über Umgebungen hinweg
- Registry-Integration
- Bereitstellungsgenehmigungen und Releasemanagement
- Überwachung von Anwendungsbereitstellungen
- Wahrung der Konsistenz über Umgebungen hinweg
Bewährte Praktiken für Container und Orchestrierung
- Gestaltung wartbarer Docker-Images
- Optimierung des Containerstarts und der Leistung
- Verwaltung des Container-Lebenszyklus
- Effiziente Ressourcenzuweisung
- Protokollierungs- und Überwachungsstrategien
- Konfigurations- und Geheimnisverwaltung
- Hochverfügbarkeit und Fehlertoleranz
- Skalierung von containerisierten Anwendungen
- Sichere Containerbereitstellung
- Versionsverwaltung und Releasestrategien
- Bewährte Praktiken für die Orchestrierungsarchitektur
Fehlerbehebung
- Diagnose von Container-Startfehlern
- Untersuchen von Anwendungs- und Container-Protokollen
- Prüfen von Containern und Images
- Fehlerbehebung in Netzwerkproblemen
- Lösung von Speicher- und Volumenproblemen
- Diagnose von Image-Build-Fehlern
- Fehlerbehebung in Docker-Compose-Anwendungen
- Untersuchen von Ressourcen- und Leistungsproblemen
- Kubernetes-Fehlerbehebungsgrundlagen
- Praktische Fehlerbehebungsübungen
Zusammenfassung und Schluss
- Wiederholung der wichtigsten Docker-Konzepte
- Wiederholung der Imageerstellung und Containerverwaltung
- Wiederholung der Bereitstellung mehrstufiger Anwendungen
- Wiederholung der Orchestrierungskonzepte und Kubernetes
- Wiederholung des Docker-Netzwerkens und der Sicherheit
- Wiederholung der CI/CD-Integration
- Bewährte Praktiken für Containerisierung und Orchestrierung
- Letzte Praxisübung
- Fragen und Diskussion
Voraussetzungen
- Vorerfahrung in der Arbeit mit Docker-Containern.
Zielgruppe
- Entwickler
- DevOps-Ingenieure
- Systemadministratoren
Erfahrungsberichte (7)
Das umfassende Wissen des Trainers und seine Fähigkeit, spontan auftretende Probleme während der Übungsstunden zu lösen. Auch die Übungen selbst sind angemessen, um die im Kurs behandelten Themen zu vertiefen.
Cosmin - Ness Digital Engineering
Kurs - Advanced Docker
Maschinelle Übersetzung
Das Tempo und die Tatsache, dass wir sehr schnell tief ins Detail gegangen sind, war gut. Ich denke jedoch, dass wir ab dem ersten Tag noch tiefer eingehen könnten (da es sich um eine fortgeschrittene Docker-Schulung handelt, gehen wir davon aus, dass grundlegende Docker-Kenntnisse vorhanden sind).
SORIN ROMAN - Ness Digital Engineering
Kurs - Advanced Docker
Maschinelle Übersetzung
Der Trainer ist eine nette Person und hat alles sehr gut erklärt, auf strukturierte Weise, die Sinn ergibt und fließend ist. Coole Übungen zum Üben.
Andreas - Ness Digital Engineering
Kurs - Advanced Docker
Maschinelle Übersetzung
Die Schulung hatte ein gutes Tempo, das auf die Erfahrung jedes Teilnehmers zugeschnitten war. Auch das Verhältnis zwischen theoretischen Grundlagen und praktischen Übungen war gut ausbalanciert.
Laurentiu - Ness Digital Engineering
Kurs - Advanced Docker
Maschinelle Übersetzung
Die Struktur und die Art der Präsentation. Für mich war diese Schulung wie eine Reise: von der App zu Docker-Containern und weiter zu Kubernetes. Die Übungen waren fesselnd und präzise.
Andrei - Ness Digital Engineering
Kurs - Advanced Docker
Maschinelle Übersetzung
Die einfache Erklärung und dass der Kurs didaktisch gestaltet war
Diana Martinez - AT&T
Kurs - Advanced Docker
Maschinelle Übersetzung
Der Dozent ist ein erfahrenes Entwickler mit Docker und freut sich, seine Erfahrungen mit der Gruppe zu teilen. DaDesktop ist eine sehr gute Plattform zum Arbeiten.
Ulises - AT&T
Kurs - Advanced Docker
Maschinelle Übersetzung