Návrh Školení
Úvod
- Úvod do pokročilých Docker konceptů a pracovních postupů
- Přehled principů kontejnerizace a případů užití
- Docker terminologie a základní komponenty
- Přehled cílů kurzu a praktického prostředí
Přehled funkcí a architektury Dockeru
- Docker Engine a jeho komponenty
- Docker klient, démon, obrazy, kontejnery a registry
- Docker architektura a životní cyklus kontejnerů
- Docker Hub a soukromé registry
- Základy Docker CLI pro pokročilé uživatele
- Správa Docker zdrojů a konfigurací
Nastavení Dockeru
- Instalace Docker Community Edition
- Konfigurace Docker prostředí
- Ověření instalace Docker
- Konfigurace Dockeru pro vývoj a testování
- Správa Docker konfigurace a úložiště
- Úvod do řešení problémů v Docker prostředí
Vytváření vlastních Docker obrazů
- Pochopení Docker obrazů a vrstev
- Psaní efektivních Dockerfile
- Pokyny Dockerfile a nejlepší praxe
- Správa build kontextu
- Build a označování obrazů
- Používání
.dockerignore - Optimalizace velikosti obrazů a výkonu buildu
- Správa verzí a tagů obrazů
- Multi-stage Docker buildy
- Publikování obrazů do kontejnerového registru
Spuštění multi-kontejnerových Docker aplikací pomocí Docker Compose
- Úvod do Docker Compose
- Definování služeb pomocí Compose souborů
- Konfigurace sítí a svazků
- Správa proměnných prostředí
- Závislosti služeb a pořadí spouštění
- Spuštění a škálování více služeb
- Build aplikací pomocí Compose
- Správa konfigurace aplikací
- Ladění multi-kontejnerových aplikací
- Nejlepší praxe Compose
Výzvy při nasazování mnoha Docker aplikací
- Správa kontejnerů napříč více hostiteli
- Škálování a dostupnost aplikací
- Objevování služeb
- Vyrovnaní zatížení
- Správa konfigurace a tajných hodnot
- Výzvy perzistentního úložiště
- Monitorování a logování ve škále
- Rolling updates a nasazování aplikací
- Obnova po poruchách kontejnerů a hostitelů
Jak orchestrace kontejnerů pomáhá udržet kontrolu
- Úvod do orchestrace kontejnerů
- Výhody a omezení orchestrace
- Srovnání Docker Swarm, Kubernetes a jiných řešení
- Rozpočítávání a správa zátěže
- Objevování služeb a síťování
- Škálování a samouzdravování aplikací
- Rolling deploymenty a rollbacky
- Správa zdrojů a izolace zátěže
- Výběr vhodné orchestrační platformy
Kubernetes v akci
- Kubernetes architektura a základní komponenty
- Pods, uzly a clustry
- Deploymenty a ReplicaSets
- Služby a objevování služeb
- ConfigMaps a Secrets
- Namespaces a organizace zdrojů
- Škálování aplikací
- Rolling updates a rollbacky
- Základy Kubernetes síťování
- Perzistentní úložiště
- Zdravotní kontroly a odolnost aplikací
- Nasazování Docker aplikací do Kubernetes
- Rozhledávání problémů Kubernetes zátěží
Pokročilé Docker síťování
- Docker síťová architektura
- Bridge, host, overlay a další síťoví řidiči
- Komunikace mezi kontejnery
- Komunikace mezi kontejnery a externími systémy
- Vlastní Docker sítě
- Síťová izolace
- Objevování služeb
- Publikování a expozice portů
- Síťování v multi-host environments
- Rozhledávání problémů Docker síťování
Docker bezpečnost
- Základy Docker bezpečnosti
- Izolace kontejnerů a bezpečnostní hranice
- Spuštění kontejnerů s příslušnými oprávněními
- Správa uživatelů a oprávnění uvnitř kontejnerů
- Linux capabilities a bezpečnostní kontroly
- Zabezpečení Docker obrazů
- Skenování zranitelností obrazů
- Bezpečná správa tajných hodnot
- Zabezpečení Docker registry
- Síťová bezpečnost a izolace
- Bezpečnost Docker démona
- Nejlepší praxe bezpečnosti kontejnerů
Nastavení workflowu kontinuální integrace pro Docker aplikace
- Úvod do CI pro kontejnerizované aplikace
- Automatizované vytváření Docker obrazů
- Automatizované testování Docker obrazů a kontejnerů
- Označování a správa verzí obrazů
- Integrace source control s Docker buildy
- Automatizované skenování zranitelností obrazů
- Publikování obrazů do registry
- Správa build artefaktů
- Implementace automatizovaných kontrol kvality
- Design opakovatelné Docker CI pipeline
Integrace Docker aplikací do existujícího workflowu
- Integrace Dockeru s existujícími vývojovými workflowy
- Kontejnerizace existujících aplikací
- Integrace Dockeru s CI/CD platformami
- Správa vývojových, testovacích, staging a produkčních prostředí
- Automatizované strategie nasazování
- Správa konfigurace napříč prostředí
- Integrace registry
- Schválení deploymentů a správa release
- Monitorování nasazování aplikací
- Udržování konzistence napříč prostředí
Nejlepší praxe pro kontejnery a orchestraci
- Design udržovatelných Docker obrazů
- Optimalizace spuštění a výkonu kontejnerů
- Správa životního cyklu kontejnerů
- Efektivní alokace zdrojů
- Strategie logování a monitorování
- Správa konfigurace a tajných hodnot
- Vysoká dostupnost a odolnost vůči chybám
- Škálování kontejnerizovaných aplikací
- Bezpečné nasazování kontejnerů
- Verzování a release strategie
- Nejlepší praxe orchestrační architektury
Řešení problémů
- Diagnostika selhání spuštění kontejnerů
- Vyhledávání aplikací a kontejnerových logů
- Inspekce kontejnerů a obrazů
- Rozhledávání síťových problémů
- Řešení problémů s úložištěm a svazky
- Diagnostika selhání buildu obrazů
- Rozhledávání problémů Docker Compose aplikací
- Vyhledávání problémů se zdroji a výkonem
- Základy řešení problémů Kubernetes
- Praktické úkoly pro řešení problémů
Shrnutí a závěr
- Přehled klíčových Docker konceptů
- Přehled vytváření obrazů a správy kontejnerů
- Přehled nasazování multi-kontejnerových aplikací
- Přehled konceptů orchestrace a Kubernetes
- Přehled Docker síťování a bezpečnosti
- Přehled CI/CD integrace
- Nejlepší praxe kontejnerizace a orchestrace
- Závěrečné praktické cvičení
- Otázky a diskuze
Požadavky
- Předchozí zkušenosti s prací s Docker kontejnery.
Cílová skupina
- Developři
- DevOps inženýři
- System administrátoři
Reference (7)
Široké znalosti instruktora, jeho schopnost řešit problémy, které se spontánně vyskytly během praktických cvičení. Rovněž samotné cvičení jsou vhodné k pevnému zaznamenání témat obsažených v kurzu.
Cosmin - Ness Digital Engineering
Kurz - Advanced Docker
Přeloženo strojem
Rychlost kurzu a skutečnost, že jsme se hned od začátku ponořili do detailů, byly velmi dobré. Myslím si však, že mohli jsme jít ještě hlouběji už od prvního dne (zvažujeme-li, že se jedná o pokročilý kurz Dockeru a předpokládáme, že účastníci již disponují základními znalostmi Dockeru).
SORIN ROMAN - Ness Digital Engineering
Kurz - Advanced Docker
Přeloženo strojem
Instruktor je milý člověk a všechno vysvětlil velmi dobře, strukturovaně a srozumitelně. Skvělé cvičení k procvičování.
Andreas - Ness Digital Engineering
Kurz - Advanced Docker
Přeloženo strojem
Výuka měla dobrý tempování, přizpůsobené zkušenostem každého účastníka. Kromě toho nabízela pěknou rovnováhu teoretických pojmů a praktických cvičení.
Laurentiu - Ness Digital Engineering
Kurz - Advanced Docker
Přeloženo strojem
Struktura a způsob prezentace. Pro mě bylo toto školení jako cesta: od aplikace přes Docker kontejnery až po Kubernetes. Úkoly byly zaujímavé a přesně zaměřené.
Andrei - Ness Digital Engineering
Kurz - Advanced Docker
Přeloženo strojem
Jednoduché vysvětlení a to, že kurz byl pedagogický
Diana Martinez - AT&T
Kurz - Advanced Docker
Přeloženo strojem
Instruktor je zkušený vývojář s Dockerem a rád sdílí své zkušenosti s skupinou. DaDesktop je velmi pohodlná platforma k práci.
Ulises - AT&T
Kurz - Advanced Docker
Přeloženo strojem