Docker -Container -Links

Docker -Container -Links
Viele einzelne Anwendungen verwenden Docker als Container. Viele Menschen nutzen es weltweit, und einer der Gründe für ihre Popularität ist die einfache Nutzung. Sie müssen in keiner Software qualifiziert sein, um Docker zu verwenden und einzurichten und sie für Experimente zu verwenden. Da der Benutzer jedoch komplexere Server versucht, müssen Sie über Docker -Netzwerktechniken informiert werden. In dem folgenden Artikel werden Docker Container -Links und die Funktionen seiner Netzwerke erläutert.

Docker -Container -Links

Die Hauptverwendung von Docker Link besteht darin, Container miteinander zu verbinden. Vor Version 1.9 Dies war der einzige Weg für die Verbindung der Behälter. Docker -Links müssen nicht in Zukunft bleiben, und die Menschen vermeiden dies normalerweise für neue Designs. Als Anfänger müssen Sie jedoch eine Vorstellung von der Verknüpfung haben, wenn Sie sich mit einem Legacy -Code befassen müssen.

Beispiel für Docker -Link

Im folgenden Absatz werden wir zwei Container erstellen, die als Redis -Server bzw. Redis -Client arbeiten würden. Wir werden Daten und Informationen mit dem Redis -Client an den Redis -Server eingeben. Der folgende erste Befehl startet einen Redis -Server, der als Redis_Server bezeichnet wird.

$ docker run -d --name redis_server redis
$ sudo docker ps

Der nächste folgende Befehl wird verwendet, um den Redis -Client zu starten, der als Redis_Client bezeichnet wird.

$ sudo docer run -it - -rm -name redis_client - -link redis_server: redisdb redus bash

Die Option von 'Link wird hier verwendet, um den Redis_Server zu verknüpfen und gleichzeitig die Informationen an redisDB zu geben. Nachdem Sie einen Befehl eingegeben haben, wird eine Eingabeaufforderung vor Ihnen geöffnet wie Folgendes:

root@e2364251d31d:/data##

Die nächsten Befehle, die Sie eingeben, werden verwendet, um den Ping zu installieren.

$ APT-Get-Update
$ APT-Get-Upgrade
$ apt-Get Installation Iputils-Ping

Sie erhalten eine Antwort zurück, nachdem Sie den Befehl eingegeben und den Redis -Server pingen.

$ ping redisdb

Jetzt würden wir den Befehl hinzufügen, um eine Verbindung zum Redis -Server herzustellen.

$ sudo docer exec -it redis_client sh
$ redis -cli -h redisdb
redisdb: 6379>

Dieser neue Befehl DB: 6379 bedeutet, dass wir mit dem Redis -Server verbunden sind. Jetzt können Sie dem Server Informationen hinzufügen. Ein Beispiel ist unten angegeben.

$ redisdb: 6379> Buch "The Happy Prince" einstellen
$ redisDB: 6379> Setzen Sie den Autor "Mark Twain"
$ redisdb: 6379> book Holen Sie sich
$ redisdb: 6379> Holen Sie sich Autor

Docker -Netzwerk

Der Docker hat die Networking -Funktion in seiner 1 installiert.9 Version. Die neue Version erstellt drei Netzwerke automatisch, nachdem wir den folgenden Befehl eingegeben haben.

$ sudo docker network ls

Keine, Bridge und Host sind die Netzwerke, die in diesem ganzen Prozess zur Existenz kommen. Lassen Sie sie unten diskutieren:

Brücke: Das Bridge -Netzwerk repräsentiert Docker0. Docker0 ist eine virtuelle Ethernet -Brücke, deren Aufgabe darin besteht. Darüber hinaus kann der Kunde seine selbstgestalteten Brücken aufbauen.

Gastgeber: Die Hauptaufgabe des Host -Netzwerks besteht darin, Container zum Host Network Stack hinzuzufügen. Sobald Sie ein Host -Netzwerk definiert haben, sind die Trennung und der Unterschied zwischen Host und Container verschwunden.

Notiz: Die Hauptaufgabe des None -Netzwerks besteht darin, das Netzwerk auszuschalten. Einige Apps werden ohne Netzwerke ausgeführt, und sie benötigen aus irgendeinem Grund kein Netzwerk.

Netzwerkbeispiel basierend auf dem benutzerdefinierten Brückennetzwerk

Dieser Abschnitt hilft beim Testen von Docker mithilfe des Redis -Servers. Erstens werden wir mit dem Befehl ein Netzwerk namens „internes Netzwerk“ erstellen.

$ sudo docer network erstellen -d Bridge Internal_Network erstellen

Nach Ihrer Recherche im Netzwerk konfigurieren Sie, dass ein Subnetz und ein Gateway erstellt wurden.

$ sudo docer network inspec inspect interal_network
[

"Name": "Internal_network",
"ID": "9BC2213D3A39D46765FE50EF8E9B7819DF8E7124B0A46552447CBDA84E31B049",
"Erstellt": "2017-11-02t08: 01: 05.119528611z ",
"Scope": "Lokal",
"Fahrer": "Brücke",
"EnableIpv6": Falsch,
"Ipam":
"Treiber": "Standard",
"Optionen": ,
"Konfiguration": [

"Subnetz": "172.18.0.0/16 ",
"Gateway": "172.18.0.1 "

]
,
"Intern": falsch,
"Angehängt": Falsch,
"Eindringen": Falsch,
"ConfigFrom":
"Netzwerk": ""
,
"Konfigurieren": Falsch,
"Behälter": ,
"Optionen": ,
"Labels":

]

Sie können das zuvor erstellte Brückennetzwerk auch auflisten.

$ sudo docker network ls

Jetzt werden wir den Befehl zum Anbringen der internen Netzwerkbrücke an den Redis_Server ausführen.

$ sudo docer run -d --network = intern_network --Name = redis_server redis

Und nun den Client beibringen:

$ sudo docer run -d --network = interne_network --Name = redis_client Redis Bash

Nachdem Sie das interne Netzwerk untersucht haben, werden Sie feststellen, dass die beiden Container im Netzwerk der Brücke aufgenommen wurden.

$ sudo docer network inspec inspect interal_network


Wenn Sie nun von Ihrem Redis_Client kommen, können Sie die REDIS_SERVER -Anzeige später eine Verbindung dazu herstellen.

$ ping redis_server

Abschluss:

In diesem Artikel habe ich Ihnen gezeigt, wie Sie Docker -Container -Links konfigurieren und arbeiten. Docker ist eine sehr einfach zu verwendende Container -Technologie, die für einzelne Anwendungen verwendet wird. Viele Menschen nutzen es weltweit, und einer der Gründe für ihre Popularität ist die einfache Nutzung.