Wykorzystanie Jenkins w procesach CI/CD oraz w pracy z kontenerami Docker-owymi
kod szkolenia: JENKINS / PL AA 2d
Szkolenie jest skierowane do członków zespołów odpowiedzialnych za projektowanie, tworzenie oraz utrzymywanie środowisk aplikacyjnych. Celem szkolenia jest zapoznanie się z architekturą systemów opartych o kontenery oraz framework-u Jenkins jako jednego z wiodących narzędzi CI/CD używanych obecnie w branży IT.
Szkolenie kładzie nacisk na praktyczne wykorzystanie zdobytej wiedzy poprzez wykonywane ćwiczenia.
Po ukończeniu szkoleniu uczestnik nabędzie wiedzę na temat następujących zagadnień:
Docker:
- Zrozumienie konteneryzacji
- Tworzenie obrazów i uruchamianie kontenerów na potrzeby CI/CD w Jenkinsie
- Debugowanie rozwiązań.
Jenkins:
- Konfiguracja serwera Jenkins
- Sposoby podłączenia agentów Jenkinsa
- Rozszerzanie funkcjonalności Jenkinsa z użyciem wtyczek
- Poznanie projektów typu Freestyle, Matrix, Pipelines oraz Multi Branch Pipeline
- Tworzenie kompleksowego pipeline’u do ciągłej integracji oprogramowania
Wdrażanie aplikacji na różnego rodzaju środowiska
Wprowadzenie do kursu:
– Wyzwania w tworzeniu rozwiązań IT
– Integracja wielu środowisk roboczych
– Jakość kodu
– Wykrywanie i zarządzanie problemami / błędami.
Konteneryzacja
– Docker CLI
– Sieci w Docker
– Budowanie i używanie obrazów Docker
– Przykład praktyczny.
Wstęp do CI/CD:
– Continuous Testing
– Continuous Building
– Continuous Inspection
– Continuous deployment.
Wprowadzenie do Jenkins:
– Architektura Jenkinsa
– Zalety używania Jenkinsa jako narzędzia do automatyzacji procesów CI/CD
– Instalacja
– Konfiguracja
– Użycie plugin-ów
– Integracja z Git
Budowa pipeline CI/CD:
– Przegląd dostępnych typów projektów w Jenkinsie oraz możliwe opcje ich wykorzystania
– Pisanie Pipeline za pomocą kodu
– Różnica pomiędzy “Declarative” oraz “Scripted” Pipeline
– Budowanie aplikacji oraz wdrożenie na środowisko Kubernetes (GKE)
– Przykład użycia ansible’a wraz z Jenkinsem
– Biblioteki współdzielone (Opcjonalne)
Bezpieczeństwo w Jenkinsie:
– Metody autoryzacji
– Backupy
–Najlepsze praktyki
Podstawowa znajomość z zakresu wytwarzania oprogramowania i znajomość przynajmniej jednego języka programowania z grupy: C#, Java, Python, Node.js.
Znajomość korzystania z wiersza poleceń / terminalu systemów operacyjnych z rodziny Linux
Metoda szkolenia:
- wykłady
- warsztaty
- Szkolenie: polski