Linki kontenerów Docker
Głównym zastosowaniem Docker Link jest umożliwienie łączenia kontenerów. Przed wersją 1.9, był to jedyny sposób na połączenie pojemników. Linki Docker nie mają pozostać w przyszłości, a ludzie zwykle unikają tego w przypadku nowych projektów. Jednak jako nowicjusz musisz mieć pojęcie o łączeniu, jeśli musisz poradzić sobie ze starszym kodem.
Przykład Link dockera
W poniższym akapicie będziemy tworzyć dwa kontenery, które będą działać odpowiednio jako serwer Redis i Klient Redis. Wprowadzimy dane i informacje do serwera Redis za pomocą klienta Redis. Poniższe pierwsze polecenie będzie uruchamiać serwer Redis, który nazywa się Redis_Server.
$ Docker Run -d --Name Redis_Server Redis
$ sudo docker ps
Następne następujące polecenie zostanie użyte do uruchamiania klienta Redis, który nazywa się Redis_Client.
$ sudo docker run -it - -rm --name redis_client - -Link Redis_Server: Redisdb Redis Bash
Opcja „Link jest tutaj używana do połączenia Redis_Server, jednocześnie podając informacje RedisDB. Po wpisaniu polecenia otworzy się wiersz polecenia, podobnie jak następujące:
root@e2364251d31d:/data#
Następne polecenia, które wprowadzisz, będą używane do instalacji ping.
Aktualizacja $ apt-get
$ apt-get Aktualizacja
$ apt-get install iputils-ping
Odzyskasz odpowiedź po wprowadzeniu polecenia i pingowaniu serwera Redis.
$ ping redisdb
Teraz dodamy polecenie, aby połączyć się z serwerem Redis.
$ sudo docker exec -it redis_client sh
$ redis -cli -h redisdb
redisdb: 6379>
To nowe polecenie DB: 6379 oznacza, że jesteśmy podłączeni z serwerem Redis. Teraz możesz dodać informacje do serwera. Przykład podano poniżej.
$ Redisdb: 6379> Set Book „The Happy Prince”
$ redisdb: 6379> Ustaw autora „Mark Twain”
$ Redisdb: 6379> Get Book
$ redisdb: 6379> zdobądź autora
Networking Docker
Docker zainstalował funkcję sieci w swoim 1.9 wersja. Nowa wersja tworzy trzy sieci automatycznie po wprowadzeniu następującego polecenia.
$ sudo Docker Network LS
Brak, most i host to sieci, które powstają w tym całym procesie. Pozwól im omówić poniżej:
Most: Sieć mostów reprezentuje Docker0. Docker0 to wirtualny most Ethernet, którego zadaniem jest przekazanie pakietów do innych dołączonych do niego interfejsów sieciowych. Ponadto klient może zbudować swoje samoznaczne mosty.
Gospodarz: Głównym zadaniem sieci hosta jest dodanie kontenerów do stosu sieci hosta. Po zdefiniowaniu sieci hosta zniknęły rozdział i różnica między hostem a kontenerem.
Notatka: Głównym zadaniem None Network jest wyłączenie sieci. Niektóre aplikacje działają bez żadnych sieci i z żadnego powodu nie potrzebują żadnej sieci.
Przykład sieciowy oparty na zdefiniowanej przez użytkownika sieci mostów
Ta sekcja pomoże przetestować Dockera za pomocą serwera Redis. Po pierwsze, będziemy tworzyć sieć o nazwie „Sieć wewnętrzna” z poleceniem.
$ sudo Docker Network Utwórz -d most wewnętrzny_network
Po badaniach w sieci skonfigurujesz, że utworzono podsieć i bramę.
$ Sudo Docker Network Inspect Inspiruj wewnętrzny_network
[[[
„Nazwa”: „Internal_network”,
„ID”: „9BC2213D3A39D46765FE50EF8E9B7819DF8E7124B0A46552447CBDA84E31B049”,
„Creed”: „2017-11-02T08: 01: 05.119528611Z ",
„Zakres”: „lokalny”,
„Driver”: „Bridge”,
„EnableIPv6”: false,
„Ipam”:
„Sterownik”: „domyślnie”,
„Opcje”: ,
„Config”: [
„Podsieć”: „172.18.0.0/16 ",
„Gateway”: „172.18.0.1 "
]
,
„Wewnętrzny”: Fałsz,
„Załączalny”: Fałsz,
„Ingress”: False,
„ConfigFrom”:
"Sieć": ""
,
„Konfiguracja”: false,
„Kontenery”: ,
„Opcje”: ,
„Etykiety”:
]
Możesz także wymienić sieć mostów, która została utworzona wcześniej.
$ sudo Docker Network LS
Teraz wykonamy polecenie dołączania wewnętrznego mostu sieciowego do Redis_Server.
$ sudo docker run -d --Network = Internal_network --Name = redis_server redis
A teraz dołącz klienta:
$ sudo docker run -d --Network = Internal_network --Name = redis_client Redis Bash
Po zbadaniu sieci wewnętrznej zdasz sobie sprawę, że dwa kontenery zostały zawarte w sieci mostu.
$ Sudo Docker Network Inspect Inspiruj wewnętrzny_network
Teraz, pochodząc z twojego redis_client, będziesz mógł później połączyć się z tym.
$ ping redis_server
Wniosek:
W tym artykule pokazałem, jak skonfigurować i pracować z linkami do kontenerów Docker. Docker to bardzo łatwa w użyciu technologia kontenera używana do pojedynczych aplikacji. Wiele osób używa go na całym świecie, a jednym z powodów jego popularności jest łatwość użycia.