Docker
Docker - tryby sieciowe (mostek, hots, zmapowany kontener i brak).
Szukaj…
Wprowadzenie
Pierwsze kroki
Tryb mostka Jest to domyślny i dołączony do mostka docker0. Umieść kontener w całkowicie oddzielnej sieciowej przestrzeni nazw.
Tryb hosta Gdy kontener jest procesem działającym na hoście, podłączymy go do NIC hosta.
Tryb mapowanego kontenera Ten tryb zasadniczo mapuje nowy kontener na istniejący stos sieciowy kontenerów. Jest również nazywany „pojemnikiem w trybie pojemnika”.
Brak Informuje dokera o umieszczeniu kontenera we własnym stosie sieciowym bez konfiguracji
Tryb mostu, tryb hosta i tryb mapowanego kontenera
Tryb pomostowy
$ docker run –d –-name my_app -p 10000:80 image_name
Zauważ, że nie musieliśmy określać --net = bridge, ponieważ jest to domyślny tryb pracy dokera. Pozwala to na uruchamianie wielu kontenerów na ten sam host bez przypisywania portu dynamicznego. Tryb BRIDGE pozwala uniknąć kolizji portów i jest bezpieczny, ponieważ każdy kontener ma własną prywatną przestrzeń nazw sieci.
Tryb hosta
$ docker run –d –-name my_app –net=host image_name
Ponieważ korzysta z przestrzeni nazw sieci hosta, nie wymaga specjalnej konfiguracji, ale może prowadzić do problemów z bezpieczeństwem.
Tryb mapowanego kontenera
Ten tryb zasadniczo mapuje nowy kontener na istniejący stos sieciowy kontenerów. Oznacza to, że zasoby sieciowe, takie jak adres IP i mapowania portów pierwszego kontenera, będą współużytkowane przez drugi kontener. Jest to również nazywane trybem „pojemnik w kontenerze”. Załóżmy, że masz dwóch kont jako web_container_1 i web_container_2, a my uruchomimy web_container_2 w trybie zmapowanego kontenera. Najpierw pobierzmy web_container_1 i uruchomimy go w trybie odłączonym za pomocą następującego polecenia,
$ docker run -d --name web1 -p 80:80 USERNAME/web_container_1
Po pobraniu spójrzmy i upewnij się, że działa. Tutaj właśnie zmapowaliśmy port do kontenera, który działa w domyślnym trybie mostu. Teraz uruchommy drugi kontener w trybie mapowanego kontenera. Zrobimy to za pomocą tego polecenia.
$ docker run -d --name web2 --net=container:web1 USERNAME/web_container_2
Teraz, jeśli po prostu dostaniesz informacje o interfejsie dla obu operatorów, otrzymasz tę samą konfigurację sieci. W rzeczywistości obejmuje to tryb HOST, który odwzorowuje dokładne informacje o hoście. Pierwszy operator działał w domyślnym trybie mostu, a drugi kontener działa w trybie mapowanego kontenera. Możemy uzyskać bardzo podobne wyniki, uruchamiając pierwszy kontener w trybie hosta, a drugi kontener w trybie mapowanego kontenera.