Łącza kontenerów Docker

Docker Container Links



Wiele pojedynczych aplikacji używa platformy Docker jako kontenera. Wiele osób korzysta z niego na całym świecie, a jednym z powodów jego popularności jest łatwość użytkowania. Nie musisz znać żadnego oprogramowania, aby używać i konfigurować dokera i zacząć używać go do eksperymentów. Jednakże, ponieważ użytkownik próbuje bardziej złożonych serwerów, konieczne jest poznanie technik sieciowych dockera. W poniższym artykule omówiono łącza kontenera dockera i funkcje jego sieci.

Łącza kontenerów Docker

Głównym zastosowaniem łącza Docker jest umożliwienie łączenia kontenerów ze sobą. Przed wersją 1.9 był to jedyny sposób na połączenie kontenerów. Linki Dockera nie mają pozostać w przyszłości, a ludzie zwykle unikają tego w przypadku nowych projektów. Jednak jako nowicjusz musisz mieć pewne pojęcie o łączeniu, jeśli masz do czynienia ze starszym kodem.







Przykład łącza dockera

W następnym akapicie stworzymy dwa kontenery, które będą działać odpowiednio jako serwer Redis i klient Redis. Wprowadzimy dane i informacje na serwer Redis za pomocą klienta Redis. Następujące pierwsze polecenie uruchomi serwer Redis o nazwie redis_server.



$Uruchom dok-D --Nazwaredis_server redis



$sudodokerps





Następne polecenie zostanie użyte do uruchomienia klienta Redis o nazwie redis_client.

$sudoUruchom dok-to --rm --Nazwaredis_klient--połączyćredis_server: redisDB redisgrzmotnąć

Opcja „link” jest tutaj używana do łączenia serwera redis_server podczas podawania informacji do redisDB. Po wpisaniu polecenia otworzy się przed tobą wiersz polecenia, taki jak:



źródło@e2364251d31d:/dane#

Kolejne polecenia, które wprowadzisz, zostaną użyte do zainstalowania pinga.

$aktualizacja apt-get

$apt-get upgrade

$apt-get installiputils-ping

Otrzymasz odpowiedź po wprowadzeniu polecenia i pingowaniu serwera Redis.

$świstredisDB

Teraz dodamy polecenie, aby połączyć się z serwerem Redis.

$sudodokerexec -toredis_klientCII

$ redis-cli –h redisDB
redisDB:6379>

Ta nowa komenda DB:6379 oznacza, że ​​jesteśmy połączeni z serwerem Redis. Teraz możesz dodać informacje do serwera. Przykład podano poniżej.

$ redisDB:6379>ustawićksiążka'Szczęśliwy książę'
$ redisDB:6379>ustawićautor„Mark Twain”
$ redisDB:6379>weź książkę
$ redisDB:6379>zdobądź autora

Sieć Dockera

Docker zainstalował funkcję sieciową w wersji 1.9. Nowa wersja automatycznie tworzy trzy sieci po wprowadzeniu następującego polecenia.

$sudosieć dokerals

None, Bridge i host to sieci, które powstają w tym całym procesie. Niech omówią poniżej:

Most: sieć mostkowa reprezentuje Docker0. Docker0 to wirtualny most Ethernet, którego zadaniem jest przekazywanie pakietów do innych dołączonych do niego interfejsów sieciowych. Dodatkowo klient może zbudować samodzielnie zaprojektowane mosty.

Gospodarz: Głównym zadaniem sieci hosta jest dodawanie kontenerów do stosu sieci hosta. Po zdefiniowaniu sieci hostów separacja i różnica między hostem a kontenerem znika.

Notatka: Głównym zadaniem sieci none jest wyłączenie sieci. Niektóre aplikacje działają bez żadnych sieci i nie potrzebują żadnej sieci z jakiegokolwiek powodu.

Przykład sieci oparty na zdefiniowanej przez użytkownika sieci mostowej

Ta sekcja pomoże przetestować Docker przy użyciu serwera Redis. Najpierw za pomocą polecenia stworzymy sieć o nazwie sieć wewnętrzna.

$sudotworzenie sieci docker-Dmostowa sieć_wewnętrzna

Po przeszukaniu sieci konfigurujesz, że została utworzona podsieć i brama.

$sudosieć dockera sprawdza sieć_wewnętrzną
[
{
'Nazwa':'wewnętrzna sieć',
'NS':'9bc2213d3a39d46765fe50ef8e9b7819df8e7124b0a46552447cbda84e31b049',
'Utworzony':'2017-11-02T08:01:05.119528611Z',
'Zakres':'lokalny',
'Kierowca':'most',
„Włącz IPv6”:fałszywe,
„IPAM”:{
'Kierowca':'domyślny',
„Opcje”:{},
„Konfiguracja”:[
{
„Podsieć”:'172.18.0.0/16',
'Wejście':„172.18.0.1”
}
]
},
'Wewnętrzny':fałszywe,
„Dołączany”:fałszywe,
'Ingres':fałszywe,
„Konfiguracja z”:{
'Sieć':''
},
„Tylko konfiguracja”:fałszywe,
„Kontenery”:{},
„Opcje”:{},
„Etykiety”:{}
}
]

Możesz również wyświetlić listę sieci mostów, która została wcześniej utworzona.

$sudosieć dokerals

Teraz wykonamy polecenie podłączenia wewnętrznego mostu sieciowego do serwera redis_server.

$sudoUruchom dok-D --sieć= sieć_wewnętrzna--Nazwa= redis_server redis

A teraz dołącz klienta:

$sudoUruchom dok-D --sieć= sieć_wewnętrzna--Nazwa= redis_client redisgrzmotnąć

Po zbadaniu sieci wewnętrznej zdasz sobie sprawę, że dwa kontenery zostały włączone do sieci mostu.

$sudosieć dockera sprawdza sieć_wewnętrzną


Teraz, wychodząc od klienta redis_client, będziesz mógł pingować reklamę redis_server później, aby się z nią połączyć.

$świstredis_server

Wniosek:

W tym artykule pokazałem, jak skonfigurować i pracować z linkami kontenerów docker. Docker to bardzo łatwa w użyciu technologia kontenerowa wykorzystywana do pojedynczych aplikacji. Wiele osób korzysta z niego na całym świecie, a jednym z powodów jego popularności jest łatwość użytkowania.