Plan Szkolenia
Wprowadzenie
- Wprowadzenie do zaawansowanych koncepcji i workflow Dockera
- Przegląd zasad konteneryzacji i przypadków użycia
- Terminologia Dockera i kluczowe komponenty
- Przegląd celów kursu i środowiska praktycznego
Przegląd funkcji i architektury Dockera
- Docker Engine i jego komponenty
- Klient, demon, obrazy, kontenery i rejestry Dockera
- Architektura Dockera i cykl życia kontenera
- Docker Hub i prywatne rejestry
- Fundamenty Dockera CLI dla zaawansowanych użytkowników
- Zarządzanie zasobami i konfiguracjami Dockera
Konfiguracja Dockera
- Instalacja Dockera Community Edition
- Konfiguracja środowiska Dockera
- Weryfikacja instalacji Dockera
- Konfiguracja Dockera do celów deweloperskich i testowych
- Zarządzanie konfiguracją i przechowywaniem Dockera
- Wprowadzenie do rozwiązywania problemów ze środowiskiem Dockera
Budowanie własnych obrazów Dockera
- Rozumienie obrazów i warstw Dockera
- Piszenie efektywnych plików Dockerfile
- Instrukcje w Dockerfile i najlepsze praktyki
- Zarządzanie kontekstem budowania
- Budowanie i etykietowanie obrazów
- Używanie
.dockerignore - Optymalizacja rozmiaru obrazów i wydajności budowania
- Zarządzanie wersjami i etykietami obrazów
- Wielostopniowe budowanie Dockera
- Publikowanie obrazów w rejestrze kontenerów
Uruchamianie wielokontenerowych aplikacji Dockera za pomocą Docker Compose
- Wprowadzenie do Docker Compose
- Definiowanie usług w plikach Compose
- Konfiguracja sieci i woluminów
- Zarządzanie zmiennymi środowiskowymi
- Zależności usług i kolejność uruchamiania
- Uruchamianie i skalowanie wielu usług
- Budowanie obrazów aplikacji za pomocą Compose
- Zarządzanie konfiguracją aplikacji
- Debugowanie aplikacji wielokontenerowych
- Najlepsze praktyki w Compose
Wyzwania związane z wdrażaniem wielu aplikacji Dockera
- Zarządzanie kontenerami na wielu hostach
- Skalowanie aplikacji i dostępność
- Odkrywanie usług
- Balansowanie obciążenia
- Zarządzanie konfiguracją i sekretami
- Wyzwania związane z trwałym przechowywaniem
- Monitorowanie i logowanie w skali
- Wdrażanie zmian (rolling updates) i wdrażanie aplikacji
- Odzyskiwanie po awariach kontenerów i hostów
Jak orkiestracja kontenerów pomaga zachować kontrolę
- Wprowadzenie do orkiestracji kontenerów
- Korzyści i ograniczenia orkiestracji
- Porównanie Docker Swarm, Kubernetesa i innych rozwiązań
- Harmonogramowanie i zarządzanie obciążeniami
- Odkrywanie usług i sieci
- Skalowanie i samonaprawa aplikacji
- Wdrażanie zmian (rolling deployments) i wycofanie (rollbacks)
- Zarządzanie zasobami i izolacja obciążeń
- Wybór odpowiedniej platformy orkiestracji
Kubernetes w akcji
- Architektura Kubernetesa i kluczowe komponenty
- Pody, węzły i klastry
- Deploymenty i ReplicaSets
- Usługi i odkrywanie usług
- ConfigMapy i Sekrety
- Przestrzenie nazw (namespaces) i organizacja zasobów
- Skalowanie aplikacji
- Wdrażanie zmian i wycofanie
- Fundamenty sieci Kubernetes
- Trwałe przechowywanie
- Sprawdzanie stanu (health checks) i odporność aplikacji
- Wdrażanie aplikacji Dockera do Kubernetesa
- Rozwiązywanie problemów z obciążeniami Kubernetesa
Zaawansowane sieciowanie Dockera
- Architektura sieci Dockera
- Sieci mostkowe, hostowe, nakładkowe i inne sterowniki sieci
- Komunikacja między kontenerami
- Komunikacja między kontenerami a zewnętrznymi systemami
- Niestandardowe sieci Dockera
- Izolacja sieciowa
- Odkrywanie usług
- Publikacja i ekspozycja portów
- Sieciowanie w środowiskach wielohostowych
- Rozwiązywanie problemów z sieciowaniem Dockera
Bezpieczeństwo Dockera
- Fundamenty bezpieczeństwa Dockera
- Izolacja kontenerów i granice bezpieczeństwa
- Uruchamianie kontenerów z odpowiednimi uprawnieniami
- Zarządzanie użytkownikami i uprawnieniami wewnątrz kontenerów
- Możliwości Linuksa (Linux capabilities) i kontrolki bezpieczeństwa
- Ubezpieczanie obrazów Dockera
- Skanowanie luk bezpieczeństwa w obrazach
- Bezpieczne zarządzanie sekretami
- Ubezpieczanie rejestrów Dockera
- Bezpieczeństwo sieci i izolacja
- Bezpieczeństwo demona Dockera
- Najlepsze praktyki bezpieczeństwa kontenerów
Ustawianie workflow ciągłej integracji dla aplikacji Dockera
- Wprowadzenie do CI dla aplikacji konteneryzowanych
- Automatyczne budowanie obrazów Dockera
- Automatyczne testowanie obrazów i kontenerów Dockera
- Etykietowanie obrazów i zarządzanie wersjami
- Integracja kontroli źródła z budowaniem Dockera
- Automatyczne skanowanie luk bezpieczeństwa w obrazach
- Publikowanie obrazów w rejestrach
- Zarządzanie artefaktami budowania
- Implementacja automatycznych kontroli jakości
- Projektowanie powtarzalnej pipeline CI Dockera
Integrowanie aplikacji Dockera z istniejącym workflow
- Integracja Dockera z istniejącymi workflowami deweloperskimi
- Konteneryzacja istniejących aplikacji
- Integracja Dockera z platformami CI/CD
- Zarządzanie środowiskami deweloperskim, testowym, stagingowym i produkcyjnym
- Automatyczne strategie wdrażania
- Zarządzanie konfiguracją między środowiskami
- Integracja rejestrów
- Approvale wdrożeń i zarządzanie wydaniem
- Monitorowanie wdrożeń aplikacji
- Utrzymywanie spójności między środowiskami
Najlepsze praktyki dotyczące kontenerów i orkiestracji
- Projektowanie łatwych do utrzymania obrazów Dockera
- Optymalizacja uruchamiania i wydajności kontenerów
- Zarządzanie cyklem życia kontenera
- Efektywna alokacja zasobów
- Strategie logowania i monitorowania
- Zarządzanie konfiguracją i sekretami
- Wysoka dostępność i odporność na awarie
- Skalowanie aplikacji konteneryzowanych
- Bezpieczne wdrażanie kontenerów
- Strategie wersjonowania i wydawania
- Najlepsze praktyki architektury orkiestracji
Rozwiązywanie problemów
- Diagnostyka awarii uruchamiania kontenera
- Analiza logów aplikacji i kontenera
- Inspekcja kontenerów i obrazów
- Rozwiązywanie problemów sieciowych
- Rozwiązywanie problemów z przechowywaniem i woluminami
- Diagnostyka awarii budowania obrazu
- Rozwiązywanie problemów z aplikacjami Docker Compose
- Badanie problemów z zasobami i wydajnością
- Fundamenty rozwiązywania problemów z Kubernetes
- Praktyczne ćwiczenia z rozwiązywania problemów
Podsumowanie i zakończenie
- Przegląd kluczowych koncepcji Dockera
- Przegląd tworzenia obrazów i zarządzania kontenerami
- Przegląd wdrażania aplikacji wielokontenerowych
- Przegląd koncepcji orkiestracji i Kubernetesa
- Przegląd sieciowania i bezpieczeństwa Dockera
- Przegląd integracji CI/CD
- Najlepsze praktyki konteneryzacji i orkiestracji
- Ostatnie ćwiczenie praktyczne
- Pytania i dyskusja
Wymagania
- Poprzednie doświadczenie w pracy z kontenerami Dockera.
Grupa docelowa
- Programiści
- Inżynierowie DevOps
- Administratorzy systemów
Opinie uczestników (7)
Szeroki zakres wiedzy trenera, jego umiejętności rozwiązywania problemów, które spontanicznie pojawiały się podczas ćwiczeń praktycznych. Ponadto, same ćwiczenia są odpowiednie do pomocy w zinternalizowaniu tematów zawartych w kursie.
Cosmin - Ness Digital Engineering
Szkolenie - Advanced Docker
Przetłumaczone przez sztuczną inteligencję
Szybki tempo i fakt, że zanurzyliśmy się w detalach od samego początku, ale sądzę, że mogliśmy jeszcze głębiej rozwijać te tematy już od pierwszego dnia (zakładając, że jest to zaawansowana trening docker, przyjmujemy, że posiadacie podstawową wiedzę na ten temat).
SORIN ROMAN - Ness Digital Engineering
Szkolenie - Advanced Docker
Przetłumaczone przez sztuczną inteligencję
trener jest miłą osobą i wszystko wyjaśnił bardzo dobrze, w strukturalny sposób, który ma sens i płynie naturalnie. fajne ćwiczenia do praktyki
Andreas - Ness Digital Engineering
Szkolenie - Advanced Docker
Przetłumaczone przez sztuczną inteligencję
Szkolenie przebiegało w dobrym tempie, dostosowanym do doświadczenia każdego uczestnika. Ponadto zachowano piękną równowagę między teoretycznymi pojęciami a praktycznymi ćwiczeniami.
Laurentiu - Ness Digital Engineering
Szkolenie - Advanced Docker
Przetłumaczone przez sztuczną inteligencję
Struktura i sposób prezentacji. Dla mnie ten szkolenie było jak podróż: od aplikacji, przez kontenery Docker, po Kubernetes. Ćwiczenia były angażujące i doskonale dopasowane.
Andrei - Ness Digital Engineering
Szkolenie - Advanced Docker
Przetłumaczone przez sztuczną inteligencję
Prosta wyjaśnienie i fakt, że kurs był dydaktyczny
Diana Martinez - AT&T
Szkolenie - Advanced Docker
Przetłumaczone przez sztuczną inteligencję
Instruktor jest dobrze doświadczonym programistą zastosowującym Docker i lubi dzielić się swoimi doświadczeniami z grupą. DaDesktop to bardzo przyjemna platforma do pracy.
Ulises - AT&T
Szkolenie - Advanced Docker
Przetłumaczone przez sztuczną inteligencję