Ta lekcja jest w bazie eduweb

Zaloguj się kontem z dostępem albo wykup dostęp do bazy, żeby obejrzeć wideo.

Lekcja 1/ 36Wprowadzenie

0:00 / 0:00

Docker: Wprowadzenie

4 godz. 33 min wideo36 lekcji10 modułów

Czego się nauczysz

  • Krótkie wprowadzenie do instalacji Dockera na Twoim komputerze
  • Dogłębne zrozumienie architektury Dockera dla webdeveloperów
  • Szybki start - dla tych, którzy chcą poznać najważniesze koncepty w trybie przyśpieszonym
  • Przedstawienie interfejsu linii poleceń - czyli praca z konsolą i terminalem
  • Stworzenie serwera NodeJS z automatycznym przebudowywaniem zasobów
  • Porady dotyczące bezpieczeństwa aplikacji
  • Zestaw poleceń i mniej oczywistych narzędzi które zawstydzą niejednego seniora
  • Uruchomienie aplikacji na produkcji przy użyciu DigitalOcean
  • Szereg dobrych praktyk w pracy z Dockerem

Docker - w Praktyce

Jako programiści, często musimy pracować z różnego rodzaju serwerami - czy to HTTP, Websockety czy też różnego rodzaju bazy danych. Zmusza to nas do zrozumienia infrastruktury naszych aplikacji internetowych, tak byśmy mogli wykonywać naszą pracę związaną z wytwarzaniem oprogramowania. Nie jest to proste zadanie, na szczęście od kilku lat branża IT znalazła rozwiązanie tego problemu.

Docker to technologia która pozwala nam stworzyć pewną warstwę abstrakcji na to, czego potrzebują nasze aplikacje aby poprawnie funkcjonować. Dzięki znajomości kilku podstawowych poleceń, jesteśmy w stanie współdzielić sposób uruchamiania naszych aplikacji między różnymi komputerami, czy innymi członkami zespołu. Poprawia to jakość i wygodę pracy z naszym kodem a także pozwala w szybki sposób przenieść wszystkie nasze aplikacje na inny serwer, bez konieczności ponownej konfiguracji środowiska od samego początku.

W tym kursie, zrozumiesz zarówno podstawy Dockera jak i przydatne dobre praktyki i polecenia która znacznie przyśpieszą Twoją pracę, a także pozwolą zastąpić leciwe rozwiązania jak np. XAMPP rozwiązaniami na miarę 21 wieku.

O co tu w ogóle chodzi?

W początkowych sekcjach kursu, zrozumiesz czym jest Docker i jakie ma zalety wobec rozwiązań oferujących pracę z serwerami lokalnymi, np. XAMPP - poznasz jego architekturę, założenia oraz najważniejsze pojęcia, których nieznajomość często spędza sen z powiek nawet doświadczonym programistom.

Konsola i linia poleceń

Jako że Docker jest to narzędzie dla programistów i administratorów systemów operacyjnych, lwia część pracy z tym narzędziem odbywa się w konsoli. Przedstawię Ci najważniejsze polecenia powiązane z tą technologią oraz zestaw dobrych praktyk i protipów które zawstydzą niejednego inżyniera oprogramowania.

3, 2, 1... Szybki start!

W tej sekcji tego kursu przejdziemy przez najważniejsze punkty tworzenia skonteneryzowanych aplikacji z perspektywy programisty aplikacji internetowych - jeśli chcesz szybko rozpocząć swoją przygodę z Dockerem, ponieważ znasz już podstawy teorii i czujesz się wystarczająco pewnie - możesz zacząć z tego miejsca! A jeśli tempo będzie zbyt szybkie - zawsze możesz wrócić do części teoretycznej pracy z Dockerem

Wygodne środowisko developerskie

Przebudowywanie zasobów na żywo, dynamiczne odczytywanie zawartości plików... To podstawowe koncepty które współcześni programiści sieci web biorą za pewnik. Przy nieznajomości Dockera, łatwo jest strzelić sobie w stopę i utrudnić swoją pracę, zabierając sobie możliwość korzystania z powyższych funkcjonalności. W tym kursie, pokażę Ci jak wygodnie pracować z Dockerem w środowisku developerskim.

Bezpieczne środowisko produkcyjne

Jedną z wielu zalet Dockera jest niewątpliwie proste przenoszenie zmian konfiguracji i infrastruktury ze środowiska developerskiego na produkcyjne. W tym kursie, poza przyswojeniem podstawowej wiedzy na temat Dockera poznasz szereg dobrych praktyk w kontekście bezpieczeństwa oraz przygotowywania Twoich aplikacji pod środowisko, na którym będzie uruchomiona Twoja aplikacja gdy uznasz że jest gotowa by ujrzeć światło dzienne.

Od teorii, przez praktykę - po Twoją aplikację w internecie!

Ten kurs to zestaw kompleksowej wiedzy dzięki której dowiesz się jak od zera, na żywo, stworzyć aplikację na Twoim lokalnym środowisku - i jakie kroki należy podjąć, aby móc zobaczyć ją w internecie - wszystko w kontekście Dockera, wysokiej skalowalności i bezpieczeństwa. W jednej z ostatnich lekcji kursu zobaczysz jak robię deploy na serwery DigitalOcean by uzyskać link do swojej nowo zbudowanej aplikacji internetowej.

Dla kogo jest ten kurs?

Ten kurs jest kierowany do webdeveloperów, bądź zaawansowanych programistów którzy nie pracowali jeszcze z Dockerem. Przydatne może być zrozumienie interfejsu linii poleceń czyli tzw. konsoli, oraz podstawowa wiedza na temat web developmentu czy systemów operacyjnych. Jeśli potrafisz korzystać z systemu kontroli wersji git, na pewno ułatwi to Tobie zrozumienie konceptu pracy z poleceniami dockera. Niemniej, każde zagadnienie staram się tłumaczyć na bieżąco.

Kurs Docker

10 rozdziałów36 lekcji4h 33min

Wprowadzenie

4min
  • Wprowadzenie2min(zablokowana)
  • Narzędzia z których korzystać będziemy w kursie3min(zablokowana)

Rozpoczęcie przygody z dockerem

15min
  • Docker kontra serwery lokalne8min(zablokowana)
  • Instalacja środowiska7min(zablokowana)

Podstawy dockera

20min
  • Obrazy a kontenery8min(zablokowana)
  • Host a kontener6min(zablokowana)
  • Architektura dockera7min(zablokowana)

Podstawy linii poleceń

27min
  • Jak pracować z linią poleceń8min(zablokowana)
  • Polecenia związane z obrazami8min(zablokowana)
  • Polecenia związane z kontenerami12min(zablokowana)

Szybki start

42min
  • Budowanie obrazu dockerowego9min(zablokowana)
  • Uruchamianie kontenera7min(zablokowana)
  • Montowanie wolumenów9min(zablokowana)
  • Wystawianie portów10min(zablokowana)
  • Podsumowanie i wskazówki7min(zablokowana)

Więcej o Dockerfile

37min
  • Omówienie poleceń dostępnych w Dockerfile11min(zablokowana)
  • Różnice między rodzajami obrazów5min(zablokowana)
  • Czym są warstwy i multi stage buildy12min(zablokowana)
  • Przykładowy proces budowania oraz porady dot. bezpieczeństwa9min(zablokowana)

Porady i triki

38min
  • Jak odczytywać logi5min(zablokowana)
  • Najczęściej używane polecenia9min(zablokowana)
  • Rozwiązywanie problemów z portami6min(zablokowana)
  • Tworzenie nowego obrazu na podstawie naniesionych zmian5min(zablokowana)
  • CLI Power user - zaawansowane komendy7min(zablokowana)
  • Kontenery narzędziowe6min(zablokowana)

Środowisko developerskie

43min
  • Docker compose - dockerowe kompozycje10min(zablokowana)
  • Omówienie alternatywy do XAMPP13min(zablokowana)
  • Ignorowanie niepotrzebnych plików8min(zablokowana)
  • Serwer NodeJS z dynamicznym przebudowywaniem zasobów12min(zablokowana)

Środowisko produkcyjne

43min
  • Dobrze wychowane kontenery w NodeJS5min(zablokowana)
  • Procesy i sygnały wyjściowe9min(zablokowana)
  • Logowanie oraz standardowe wejście/wyjście10min(zablokowana)
  • Budujemy obraz produkcyjny przykładowej aplikacji10min(zablokowana)
  • Umieszczanie obrazów na platformach hostingowych10min(zablokowana)

Zakończenie

4min
  • Co dalej?3min(zablokowana)
  • Podsumowanie i podziękowanie1min(zablokowana)

Ten kurs jest w bazie eduweb

Dostęp do wszystkich kursów z bazy eduweb za 199 zł/mies.

Wykup dostęp do bazy

Autor kursu

Średnia ocen autora: 4,5

Bio

Cześć! Nazywam się Wojtek i moja obecna rola to Full Stack Engineer - tworzeniem stron zajmuję się już od ponad dziesięciu lat. Jeśli miałbym wskazać moją pasję, to zdecydowanie byłoby to programowanie w technologiach webowych i dalsze szerzenie się wiedzą :)

Możesz kojarzyć mnie z kanału Koduje na Youtube, gdzie stworzyłem ponad 50 darmowych poradników dotyczących różnych zagadnień z Front-Endu, czy jako głównego koordynatora cyklicznych spotkań Meet.js Warszawa. Poza tym jestem też członkiem programu Mozilla TechSpeakers - technologie open-source, ich tworzenie oraz przemowy publiczne również nie są mi obce. Od czasu do czasu prowadzę również indywidualne zajęcia dla osób poszukujących swojej pierwszej pracy jako Front-End developer.

Uwielbiam tematykę dostępności sieci - o której świadomość, zwłaszcza na polskim rynku - jest dosyć znikoma. Interesuję się również IoT oraz VR (❤️) czy Game-Developmentem, również w JavaScript!

Uważam, że nauczanie jest zdecydowanie najlepszą metodą, by poszerzać swoje horyzonty i dalej się rozwijać!

https://koduje.pl