Wprowadzenie do sieci Docker: przepływ pracy, podstawy sieci, polecenia sieciowe
Opublikowany: 2020-04-30Spis treści
Wstęp
W dobie wirtualizacji administratorzy sieci nie pracują już tylko na tradycyjnych komponentach sieciowych, takich jak routery, komponenty LAN/WAN i przełączniki. Muszą pracować na komponentach sieciowych na platformach wirtualizacyjnych. Cała branża IT jest zainteresowana koncepcją konteneryzacji, w której niezbędne są silne umiejętności sieciowe.
Ponieważ Docker jest jednym z najczęściej używanych programów do konteneryzacji, umiejętności obsługi sieci Docker są ważne przy konfigurowaniu kontenera. Obecnie ponad 12 000 firm używa kontenerów Docker do wysyłki swoich aplikacji . Do firm tych należą JPMorgan Chase, ThoughtWorks i Neudesic.
W tym artykule dowiemy się o wprowadzeniu do Dockera, podstawach sieci Docker .
Najpierw zrozummy podstawy Dockera.
Co to jest Docker?
Docker to platforma do pakowania oprogramowania, która wprowadziła koncepcję konteneryzacji. Konteneryzacja to proces, w którym aplikacja jest pakowana ze wszystkimi wymaganymi zależnościami, takimi jak biblioteki, moduły i system operacyjny. Dzięki temu oprogramowanie można łatwo wykonać w dowolnym środowisku.
Te pakiety oprogramowania są nazywane kontenerami Dockera . Te kontenery służą do wdrażania aplikacji w określonym środowisku. Może to być kontener Ubuntu, kontener CentOS, kontener Tomcat-Ubuntu lub kontener CakePHP.

Załóżmy, że aplikacja Java jest tworzona do działania w środowisku z zainstalowanym serwerem Tomcat. Po opracowaniu aplikacja jest wysyłana do testów. Testerzy muszą ponownie skonfigurować serwer Tomcat w celu uruchomienia aplikacji. Następnie zostanie wysłany do środowiska produkcyjnego, które ponownie będzie wymagało skonfigurowania tego samego środowiska.
Ale kontener Dockera mający już w sobie środowisko rozwiąże problem zaczynania od zera. Dzięki temu programiści, testerzy i członkowie jednostek produkcyjnych mogą uruchamiać aplikację bez ciągłego konfigurowania serwera Tomcat.
Przeczytaj: Pomysły i tematy projektów Docker
Przepływ pracy w Dockerze
Kod aplikacji lub projektu jest zapisany w pliku Docker . Ten plik zawiera wymagania i zależności aplikacji. Ten plik tworzy obraz platformy Docker , który jest później używany do wykonania kodu w pliku.
Obraz zawiera kod, zmienne środowiskowe, pliki konfiguracyjne, czas wykonywania i biblioteki potrzebne do uruchomienia aplikacji. Obrazy są następnie przesyłane do centrum Docker Hub , które jest repozytorium GIT składającym się z obrazów platformy Docker. Z tych repozytoriów możesz pobierać i przesyłać własne obrazy Dockera.
Członkowie zespołu Quality Assurance lub zespołu produkcyjnego firmy pobierają obrazy do opracowania swoich pojemników. Ponieważ wszystkie te kontenery mogą być odizolowane od siebie, sieć Docker jest zbiorem reguł, dzięki którym współdziałają ze sobą.
Teraz, gdy masz już podstawową wiedzę na temat platformy Docker , przyjrzyjmy się bliżej sieciom Docker .
Przeczytaj także: Wynagrodzenie Dockera w Indiach
Podstawy obsługi sieci Docker
Podczas początkowej instalacji platformy Docker konfigurowane są trzy różne sieci platformy Docker — brak, host i most. Brak i host są ważnymi składnikami stosu platformy Docker i nie można ich usunąć. Można skonfigurować sieć mostową, znaną jako sieć docker0.
Docker może służyć do tworzenia wielu sieci. Możesz dodać kontenery do więcej niż jednej sieci. Kontener dołączony do wielu sieci może łączyć się z kontenerami tych sieci.
Główne sterowniki sieciowe używane w Dockerze to:
Most
Jest to prywatna sieć domyślna utworzona na hoście przez Docker. Podsieć IP i brama są automatycznie tworzone przez tę sieć. Kontenery należące do tej sieci są częścią tej samej podsieci. Tak więc kontenery w tej sieci komunikują się za pośrednictwem adresowania IP.
Sterowniki sieci Bridge są bardzo przydatne, gdy aplikacja jest wykonywana w samodzielnym kontenerze. Instalacje platformy Docker domyślnie reprezentują docker0. Docker zwróci obiekt JSON opisujący sieć pomostową, jeśli wpiszesz w konsoli następujące polecenie:

Sieć dockera sprawdza mostek
Gospodarz
Sterownik hosta służy do autonomicznych kontenerów . Jeśli tryb sieci hosta jest używany dla kontenera, izolacja między hostem platformy Docker a stosem sieciowym jest usuwana. Kontener nie otrzymuje przydzielonego adresu IP.
Na przykład wykonywany jest kontener, który wiąże się z portem 80 i używana jest sieć hosta. W takim przypadku aplikacja kontenera będzie dostępna na porcie 80 na adresie IP hosta. Ten tryb sieciowy jest przydatny, gdy kontener obsługuje dużą liczbę portów.
Co więcej, sterownik hosta umożliwia uruchamianie kilku kontenerów internetowych na tym samym hoście.
Nic
W tego typu sieci kontenery nie mają dostępu do sieci zewnętrznych i nie są przyłączone do innych kontenerów lub sieci. Brak jest używany, gdy chcesz wyłączyć stos sieciowy w określonym kontenerze.
Żaden nie ma tylko interfejsu pętli zwrotnej, co oznacza, że nie ma zewnętrznych interfejsów sieciowych.
Narzuta
Służy do tworzenia wewnętrznej sieci prywatnej obejmującej wszystkie węzły w klastrze roju. Sieć Docker Swarm to grupa maszyn wirtualnych lub fizycznych, które wykonują aplikację Docker. Ten sterownik sieciowy jest ważny w sieci Docker , ponieważ umożliwia komunikację między autonomicznym kontenerem a usługą roju.
Samodzielne kontenery w różnych demonach platformy Docker mogą również wchodzić w interakcje z tym sterownikiem. Dzięki temu nie musisz wykonywać routingu na poziomie systemu operacyjnego dla kontenerów.
Macvlan
Ta sieć umożliwia przypisanie do kontenera adresu MAC. To sprawia, że wygląda jak urządzenie fizyczne. Korzystając z tego adresu, demon platformy Docker kieruje ruch do określonego routera. Demon Docker to serwer, który działa w systemie operacyjnym hosta i współdziała z nim w celu wykonywania różnych działań. Sieć Macvlan upraszcza komunikację między kontenerami.
Macvlan jest dobrym rozwiązaniem w przypadku obsługi starszych aplikacji, które mają być podłączone do sieci fizycznej. Jeśli ustanowisz sieć Macvlan, może ona działać w dwóch trybach — trybie mostu lub trybie mostu trunkingowego 802.1q.
Wtyczki sieciowe
Z Dockerem możesz używać wtyczki sieciowej innej firmy. Te wtyczki są dostępne w Docker Hub i można je uzyskać od dostawców zewnętrznych.
Polecenia sieciowe platformy Docker
Najczęstsze polecenia sieciowe platformy Docker są następujące:
Wyświetlanie listy sieci Docker
Ten kod wyświetli listę wszystkich sieci Docker na hoście —
Sieć dokera ls
Tworzenie sieci Docker
Poniższe polecenie pomoże Ci w utworzeniu sieci przed uruchomieniem kontenera:
Docker network create –-driver nazwa_sterownika
Tutaj drivername to nazwa nadana sterownikowi sieciowemu, a Wyświetl listę poleceń sieciowych
To polecenie służy do wyświetlania listy dostępnych poleceń sieciowych:
pomoc sieci Docker
Usuwanie sieci
Do usunięcia sieci można użyć polecenia rm.
sieć docker rm mojasieć
Łączenie się z siecią Docker
Kiedy tworzysz sieć Docker, domyślnie jest ona połączona z siecią pomostową. Następujące polecenie może służyć do łączenia się z inną siecią po uruchomieniu kontenera:
Uruchom kontener dockera -it –net=mynetwork nginx
Uzyskiwanie portów kontenerowych

Port kontenera możesz uzyskać za pomocą polecenia port:
port dokowania cotainer_name/id
Wniosek
Docker jest obecnie kluczowym aspektem tworzenia oprogramowania. Ponieważ coraz więcej firm zmierza w kierunku konteneryzacji, tworzenie sieci jest ważne dla izolowania kontenerów. Pozwala to na tworzenie aplikacji internetowych, które współpracują ze sobą bezpiecznie. Sieci te pomagają w lepszej komunikacji między kontenerami.
Docker pomógł wielu firmom skrócić czas wdrażania i zmniejszyć związane z nim koszty. Tak więc, jeśli jesteś początkującym, ten artykuł przyda się do omówienia podstaw docker networking .
Jeśli chcesz dowiedzieć się więcej o tworzeniu pełnego stosu, zapoznaj się z dyplomem PG upGrad i IIIT-B z pełnego stosu oprogramowania, który jest przeznaczony dla pracujących profesjonalistów i oferuje ponad 500 godzin rygorystycznego szkolenia, ponad 9 projektów i zadań, IIIT Status -B absolwentów, praktyczne praktyczne projekty zwieńczenia i pomoc w pracy z najlepszymi firmami.