Opanuj podstawy Dockera za pomocą tych ważnych pojęć wyjaśnionych prostymi słowami.

Mastering Docker to poszukiwana umiejętność wśród inżynierów oprogramowania backendowego. Docker pomoże Ci budować, pakować i dystrybuować aplikacje.

Dokowane aplikacje mogą działać w różnych środowiskach. Skraca to przestoje aplikacji, zapewniając firmom przewagę konkurencyjną. Ale Docker może być onieśmielający, gdy zaczniesz się go uczyć. Oto istotne tematy, których należy się nauczyć, aby opanować Dockera.

Co to jest Docker?

Docker to oprogramowanie służące do pakowania aplikacji w jednostki wykonywalne zwane kontenerami. Docker zapewnia pomoc w szybkim tworzeniu, testowaniu i wdrażaniu aplikacji.

Używając Dockera, wchodzisz w interakcję z silnikiem Docker Engine. Możesz zainstalować Docker Engine na dowolnym systemie operacyjnym, w tym Windowsa 10 i 11, System operacyjny Mac, Lub Systemy Ubuntu/Linux. Aby efektywnie korzystać z Dockera, musisz nauczyć się wielu narzędzi i koncepcji. Oto najważniejsze z nich, od których możesz zacząć.

instagram viewer

1. Obraz Dockera

Obraz platformy Docker to lekki plan używany do tworzenia kontenerów. Jest to szablon instrukcji określających system operacyjny, kod aplikacji i zależności. Definiujesz instrukcje dotyczące budowania obrazu w pliku Dockerfile.

W pliku wskazujesz wszystko, czego potrzebuje Twoja aplikacja. Następnie Docker automatycznie buduje obraz na podstawie dostarczonych instrukcji. Różne obrazy można znaleźć w rejestrze internetowym Dockera, Docker Hub. Docker zaleca używanie oficjalnych obrazów ze względów bezpieczeństwa.

Można także tworzyć obrazy w oparciu o niestandardowe konfiguracje. Obrazy są dostępne w różnych rozmiarach, systemach operacyjnych i językach. Możesz wybrać ten, który najlepiej pasuje do Twojego zastosowania. Można się na przykład uczyć jak zbudować obraz Dockera internetowego interfejsu API platformy .NET.

2. Kontener Dockera

Kontenery to jednostki używane do pakowania aplikacji w jednostkę wykonywalną. Kontenery zawierają wszystko, co jest potrzebne do uruchomienia aplikacji, w tym biblioteki, kod, zależności i środowisko wykonawcze.

Kontenery izolują aplikacje w jednostki, umożliwiając im spójne działanie w różnych środowiskach. Kontenery umożliwiają zarządzanie aplikacjami w środowiskach deweloperskich i produkcyjnych bez występowania błędów. Tam są wiele przypadków użycia kontenerów które możesz eksplorować.

Kontenery Docker zawierają szczegółowe informacje, takie jak identyfikator kontenera, obraz i podstawowy system operacyjny. Możesz także zobaczyć środowisko wykonawcze, stan i nazwę kontenera. Aby wyświetlić listę wszystkich kontenerów w systemie, użyj następującego polecenia:

docker container ls

Zobaczysz szczegóły wszystkich uruchomionych kontenerów:

Możesz także użyć okno dokowane ps aby wyświetlić wszystkie działające kontenery. I inspekcja kontenera dokowanego [identyfikator kontenera] aby zobaczyć zawartość kontenera.

4. Plik Dockera

Plik Dockerfile to dokument określający instrukcje dotyczące tworzenia obrazu Dockera. Plik określa obraz bazowy, kod aplikacji i pliki potrzebne do utworzenia obrazu.

Plik zawiera również zmienne środowiskowe i polecenia służące do tworzenia obrazu. Możesz utworzyć plik Dockerfile jak każdy inny plik. Instrukcje dotyczące pliku należy określić przy użyciu składni zrozumiałej dla platformy Docker. Poniżej znajduje się przykład przykładowego pliku Dockerfile:

5. Tworzenie Dockera

Docker Compose to narzędzie do definiowania i uruchamiania wielokontenerowych aplikacji Docker. Wszystkie usługi konfigurujesz w pliku YAML. Plik YAML to dokument, w którym określasz usługi potrzebne dla Twojej aplikacji. Następnie możesz utworzyć i uruchomić wszystkie usługi za pomocą jednego polecenia.

Docker Compose może uruchamiać aplikacje w różnych środowiskach. Mogą to być środowiska produkcyjne, testowe, deweloperskie lub testowe. Docker Compose upraszcza złożony proces orkiestracji wielu kontenerów.

Za pomocą Docker Compose możesz zarządzać aplikacją przez cały jej cykl życia. Może to obejmować usługi uruchamiania, zatrzymywania i odbudowy. Możesz także przeglądać stan uruchomionych usług, dane wyjściowe dziennika strumieniowego i uruchamiać polecenia w usłudze.

Dzięki Docker Compose możesz konfigurować sieci, zarządzać woluminami i określać zależności. Aplikacje można także skalować w poziomie w środowisku produkcyjnym, określając usługi replik.

Compose upraszcza wdrażanie złożonych aplikacji w różnych środowiskach. Można go także używać do replikowania tego samego środowiska w różnych systemach. Nauka korzystania z Docker Compose może zwiększyć wydajność Twojej aplikacji.

Oto przykład pliku YAML Docker Compose:

6. Centrum Dockera

Centrum Dockera to internetowy rejestr kontenerów dla platformy Docker. Będąc największym rejestrem kontenerów, jest narzędziem do współpracy dla programistów i autorów oprogramowania open source. Jest to także doskonały rynek dla dostawców oprogramowania.

Docker Hub to zaufane źródło informacji o niezawodnym oprogramowaniu do wirtualizacji. Możesz utworzyć repozytorium i udostępnić ponad 100 000 obrazów.

Możesz hostuj swoje aplikacje i kod na platformie. Możesz także współpracować przy projektach z innymi programistami. Docker Hub oferuje bezpłatną opcję publiczną lub płatne prywatne repozytoria dla określonych autoryzowanych zespołów.

7. Sieć Dockera

Sieć Docker to funkcja, która umożliwia kontenerom komunikację między sobą i zasobami zewnętrznymi. Sieci zapewniają kontrolowaną i izolowaną komunikację pomiędzy kontenerami. Mogą to być kontenery działające na jednym lub wielu hostach.

Kiedy uruchamiasz kontener na swoim komputerze, nie jest on widoczny w sieciach zewnętrznych. Porty służą do udostępniania kontenerów zewnętrznym adresom IP, usługom DNS, tabelom tras i bramom internetowym.

Sieć umożliwia kontenerom działanie w izolowanych środowiskach sieciowych. Sieci udostępniają przestrzenie nazw i adresy IP, redukując konflikty kontenerów i zwiększając bezpieczeństwo.

8. Woluminy Dockera

W Dockerze woluminy są mechanizmem służącym do przechowywania trwałych danych. Z założenia kontenery są efemeryczne. Oznacza to, że można je łatwo zastąpić lub zniszczyć wraz ze wszystkimi danymi. Są jednak przypadki, w których chciałbyś zachować dane. W takich przypadkach można używać woluminów Dockera do zarządzania trwałymi danymi.

Woluminy mają także inne zastosowania, m.in. umożliwiają udostępnianie danych pomiędzy kontenerami. W porównaniu z innymi formami przechowywania można łatwo tworzyć kopie zapasowe i migrować. Dodatkowo możesz zarządzać woluminami za pomocą Docker CLI lub API.

Jeśli uruchomisz kontener bez wolumenu, Docker automatycznie go utworzy. Można także tworzyć woluminy izolowane od dowolnych kontenerów i zarządzać nimi. Użyj poniższego polecenia, aby utworzyć wolumin.

docker volume create my-vol

Aby zobaczyć utworzony wolumin, uruchom następujące polecenie:

docker volume ls //local my-vol

Następnie możesz dołączyć woluminy do dowolnego kontenera. Więcej o wolumenach można przeczytać na stronie Doker oficjalna dokumentacja.

Inne funkcje Dockera

Docker to jeden z najlepszych wyborów do zarządzania kontenerami i kontroli wersji. Jeśli poznasz zestaw narzędzi Dockera, możesz przyspieszyć i usprawnić przepływ pracy programistycznej.

Docker ma wiele funkcji, za pomocą których możesz zarządzać swoimi aplikacjami. Po opanowaniu kluczowych funkcji możesz eksplorować inne złożone funkcje, takie jak Docker Swarm, który służy do organizowania złożonych aplikacji.