CI/CD z wykorzystaniem Jenkins, Ansible, Dockera, Terraforma i chmur publicznych
Czas trwania 2 dni
(szkolenie online lub stacjonarne)
Prowadzący szkolenie: Piotr Kośka
Piotr Kośka to doświadczony inżynier infrastruktury i bezpieczeństwa z ponad dekadą praktyki w różnych dziedzinach technologii IT. Procował jako starszy inżynier bezpieczeństwa i infrastruktury w Huuuge Games, gdzie zarządzał zespołem i infrastrukturą chmurową AWS, środowiskiem CI/CD, a także narzędziami automatyzacji takimi jak Ansible, Salt, Terraform i OpenTofu. Pracował również dla Hamsa Pay, 3Shape Poland, Anixe – Jako Architekt architektury chmurowej oraz operator środowisk CI/CD takich jak github actions, Jenkins, Team City.
Piotr jest autorem wielu publikacji, które koncentrują się na różnych aspektach informatyki, w tym na zabezpieczaniu domowych serwerów, a także na tematach związanych z chmurą obliczeniową i językiem Bash, Python. Jego bogate doświadczenie obejmuje pracę z wieloma systemami Linux, takimi jak Ubuntu, Debian, CentOS i CoreOS, a także administrację serwerem Jenkins i zarządzanie kontenerami Docker i LXC/LXD, Kubernetes.
Program szkolenia
Wprowadzenie do Jenkins, Ansible, Docker, Terraform oraz Chmur Publicznych
- Wprowadzenie do Continuous Integration/Continuous Delivery (CI/CD)
- Przegląd Jenkins, jego roli w CI/CD oraz podstawowej architektury
- Wprowadzenie do Ansible: co to jest, jakie problemy rozwiązuje, podstawy składni YAML
- Wprowadzenie do Docker: co to jest, podstawy tworzenia obrazów Docker oraz uruchamiania kontenerów
- Wprowadzenie do Terraform: co to jest, jakie problemy rozwiązuje, podstawy składni HCL
- Wprowadzenie do chmur publicznych (DigitalOcean i AWS): omówienie podstawowych usług, modeli cenowych i funkcji
Instalacja Jenkinsa i Konfiguracja wstępna
- Pobieranie i instalacja Jenkins
- Konfiguracja użytkownika administracyjnego
- Instalacja i konfiguracja pierwszych pluginów
Konfiguracja jobów w Jenkinsie
- Jak zdefiniować freestyle project
- Jak zdefiniować pipeline project
- Jak zdefiniować foldery dla organizacji jobów
- Praktyczne ćwiczenia na podstawie przykładowych projektów
Praca z Ansible w Jenkinsie
- Wprowadzenie do playbooków Ansible
- Integracja Jenkins z Ansible
- Przykładowe Joby wykorzystujące Ansible
Praca z Dockerem w Jenkinsie
- Tworzenie obrazów Docker jako część procesu CI
- Uruchamianie kontenerów Docker w ramach jobów w Jenkinsie
- Przykładowe joby wykorzystujące Docker
Wykorzystanie Terraform i chmur publicznych w Jenkinsie
- Wprowadzenie do skryptów Terraform
- Praca z DigitalOcean i AWS za pomocą Terraform
- Przykładowe Joby Jenkinsa wykorzystujące Terraform i chmurę publiczną
Podsumowanie kursu
- Przejście przez najważniejsze punkty omówione na kursie
- Przykłady jak rozwijać umiejętności nabyte na kursie
- Sesja Q&A, omówienie problemów, które uczestnicy mogą napotkać w przyszłości
Opis szkolenia
Szkolenie z zakresu Continuous Integration/Continuous Delivery z wykorzystaniem Jenkins, Ansible, Dockera, Terraforma i chmur publicznych.
Po szkoleniu uczestnik:
- Zrozumie koncepcje Continuous Integration (CI) i Continuous Delivery (CD): W pierwszej sesji uczestnik nauczy się podstawowych zasad CI/CD, w tym jak wygląda proces, jakie korzyści przynosi i jak go efektywnie implementować.
- Pozna podstawy narzędzi Jenkins, Ansible, Docker i Terraform: Uczestnik zrozumie, jakie są kluczowe funkcje tych narzędzi, jak są one wykorzystywane w ekosystemie CI/CD i jak zaczynać z nimi pracę.
- Zdobędzie umiejętność instalacji i konfiguracji Jenkinsa: Będzie wiedział, jak pobrać i zainstalować Jenkins, jak skonfigurować użytkownika administracyjnego, a także jak instalować i konfigurować podstawowe wtyczki.
- Nauczy się definiować i konfigurować Joby w Jenkinsie: Uczestnik będzie w stanie zdefiniować freestyle project, pipeline project i foldery do organizacji jobów, oraz zrozumie, jakie są ich charakterystyczne cechy i kiedy je stosować.
- Zdobędzie praktyczne doświadczenie w integracji Jenkinsa z Ansible: Uczestnik pozna podstawy pracy z playbookami Ansible i nauczy się, jak zintegrować Jenkinsa z Ansible, aby automatycznie uruchamiać playbooki jako część procesu CI/CD.
- Nauczy się korzystać z Docker w Jenkinsie: Uczestnik zrozumie, jak tworzyć obrazy Docker i uruchamiać kontenery jako część procesu CI/CD w Jenkinsie.
- Zdobędzie umiejętność korzystania z Terraform i chmur publicznych w Jenkinsie: Uczestnik nauczy się korzystać z skryptów Terraform w Jenkinsie i zrozumie, jak wykorzystać DigitalOcean i AWS jako część swojego procesu CI/CD.
Jedynym wymogiem dla uczestnika jest posiadanie własnego komputera z możliwością uruchomienia VirtualBox lub innego narzędzia do wirtualizacji, na którym można zainstalować i skonfigurować wszystkie wymienione narzędzia.