Wir empfehlen Ihnen, alle Pakete und Repositorys zu aktualisieren, bevor ein neues Paket auf dem System installiert wird. Führen Sie den folgenden Befehl aus und er erledigt den Job für Sie.
sudo apt-Get-Update
Docker installieren
Wir werden Consul Server mit Docker ausführen. Wir müssen Docker vor der Installation von Consul installieren. Entfernen Sie zunächst die ältere Version von Docker, wenn eine Installation vorhanden ist. Führen Sie dazu den folgenden Befehl aus.
sudo apt-Get Docker Docker-Engine Docker entfernen.io
Führen Sie als nächstes den folgenden Befehl aus, um die erforderlichen Pakete zu installieren.
sudo apt-Get install \ apt-transport-https \ ca-zertifikate \
CURL \ Software-Properties-Common
Als nächstes müssen Sie den offiziellen GPG -Schlüssel des Docker hinzufügen. Führen Sie den folgenden Befehl aus und er erledigt den Job für Sie.
curl -fssl https: // herunterladen.Docker.com/linux/ubuntu/gpg | sudo apt-key add -
Jetzt sind wir bereit, den Docker zu installieren. Führen Sie dazu den folgenden Befehl aus, um dies zu tun.
sudo apt-Get Installieren Sie Docker-CE
Sie können diese Installation mithilfe des folgenden Befehls überprüfen. sudo systemctl Status Docker Sie sollten die folgende Ausgabe sehen.
sudo systemctl Status Docker
● Docker.Service - Docker -Anwendung Container Engine
Laden: geladen (/lib/systemd/system/docker.Service; ermöglicht; Anbieter Voreinstellung: aktiviert)
Aktiv: aktiv (laufend) seit Mi 2019-07-10 12:04:28 UTC; 57S vor
Dokumente: https: // docs.Docker.com
Hauptpid: 4310 (Dockerd)
Cgroup: /system.Slice/Docker.Service
└─4310/usr/bin/dockerd -h fd: // ---containerd =/run/containerd/containerd.Socke
10. Juli 12:04:26 testconsul1 dockerd [4310]: time = "2019-07-10t12: 04: 26.296629644z "
Level = Warnung msg = "Ihr Kernel DOE
10. Juli 12:04:26 testconsul1 dockerd [4310]: time = "2019-07-10t12: 04: 26.296913361z "
Level = Warnung msg = "Ihr Kernel DOE
10. Juli 12:04:26 testconsul1 dockerd [4310]: time = "2019-07-10t12: 04: 26.297249324z "
Level = Warnung msg = "Ihr Kernel DOE
10. Juli 12:04:26 testconsul1 dockerd [4310]: time = "2019-07-10t12: 04: 26.299409872z "
Level = info msg = "Laden Container
10. Juli 12:04:26 testconsul1 dockerd [4310]: time = "2019-07-10t12: 04: 26.437281588z "
Level = info msg = "Standardbrücke (Do do
10. Juli 12:04:26 testconsul1 dockerd [4310]: time = "2019-07-10t12: 04: 26.501563121z "
Level = info msg = "Laden Container
10. Juli 12:04:28 testconsul1 dockerd [4310]: time = "2019-07-10t12: 04: 28.798610779z "
Level = info msg = "Docker Daemon" com
10. Juli 12:04:28 testconsul1 dockerd [4310]: time = "2019-07-10t12: 04: 28.799513575z "
Level = info msg = "Dämon hat die Fertigstellung
10. Juli 12:04:28 Testconsul1 Systemd [1]: Startdocker Anwendungscontainermotor gestartet.
10. Juli 12:04:28 testconsul1 dockerd [4310]: time = "2019-07-10t12: 04: 28.821957315z "
Level = info msg = "api hör auf /var zu
Zeilen 1-18/18 (Ende)
Konsul installieren
Wir haben Docker erfolgreich in Ihrem System installiert. Jetzt werden wir Consul mit dem Docker -Bild installieren. Zunächst müssen Sie das Docker -Image von Konsul erhalten. Wenn Sie das Bild lokal. Führen Sie den folgenden Befehl aus, um das Bild herunterzuladen. Sudo Docker Pull Consul Sie sollten die folgende Ausgabe sehen:
Sobald Sie das Konsulbild erhalten haben, sind Sie jetzt bereit, den Konsulserver mit dem folgenden Befehl zu starten.
sudo docker run -p 8500: 8500 -p 8600: 8600/udp --Name = Konsulkonsul: v0.6.4 Agent
-Server -Bootstrap -ui -client = 0.0.0.0
Sie sehen die folgende Ausgabe:
sajid@testconsul: ~ $ sudo docker run -p 8500: 8500 -p 8600: 8600/udp --Name = Konsul
Konsul: v0.6.4 Agent -Server -Bootstrap -ui -client = 0.0.0.0
==> WARNUNG: Bootstrap -Modus aktiviert! Nicht aktivieren, es sei denn erforderlich
==> Startkonsulagenten…
==> Start Consul Agent RPC…
==> Konsulagenten laufen!
Knotenname: '14AAFC4BDAEE'
DataCenter: 'DC1'
Server: True (Bootstrap: True)
Client addr: 0.0.0.0 (http: 8500, https: -1, dns: 8600, rpc: 8400)
Cluster addr: 172.17.0.2 (LAN: 8301, WAN: 8302)
Klatschverschlüsselung: Falsch, RPC-TLS: Falsch, TLS-Einkommen: Falsch
Atlas:
Als nächstes können Sie die Containerprotokolle mit dem folgenden Befehl überprüfen.
Sudo Docker Protokolle
Ersetzen Sie die Container -ID in unserem Fall durch den tatsächlichen Container in unserem Fall: sie ist:
Sudo Docker Protokolle 14AAFC4bdaee
Jetzt wissen wir, dass Consul eine verteilte Anwendung ist, daher gibt es keinen Sinn, den Konsulserver allein auszuführen. Als nächstes müssen Sie den Konsul im Client -Modus erneut ausführen. Führen Sie den folgenden Befehl aus, um den Konsulagenten im Client -Modus zu starten.
Sudo Docker Run -D -Konsulagenten
Sie können alle verfügbaren Container über den folgenden Befehl überprüfen. sudo docker ps Der obige Befehl listet alle laufenden Container auf. Hier sollten in unserem Fall zwei Container laufen. Sie können viele Konsulagenten im Client -Modus und auf vielen anderen Knoten auch bereitstellen, wenn Sie möchten.
Als nächstes müssen Sie den Client mit dem Server verbinden. Führen Sie den folgenden Befehl aus, um dem Serverknoten beizutreten.
sudo docker run -d conul Agent - -reetry -join = 172.17.0.2
Jetzt können wir die Protokolle des Client- und Server -Containers überprüfen und die Verbindung zwischen dem Konsulserver und dem Konsul -Client über den folgenden Befehl bestätigen.
Sudo Docker Protokolle 14AAFC4bdaee
Wenn Sie nun die Konsulmitglieder sowohl auf dem Konsul -Client- als auch im Serverknoten sehen, sollten sie uns beide Container anzeigen. Sie können dies mit den folgenden Befehlen tun.
Auf dem Clientknoten: sudo docker exec -itKonsulmitglieder
Auf dem Serverknoten: sudo docker exec -itKonsulmitglieder
Ändern Sie die Bindungsschnittstelle des Konsulservers
Jetzt werden wir den Konsul im Host -Modus starten. Wenn wir den Konsul im Hostmodus starten, gibt es mehr Schnittstellen auf dem Host -Computer. Um dieses Problem zu beheben, müssen Sie die Bindungsschnittstelle ändern. Starten Sie den Konsul im Hostmodus mit dem folgenden Befehl.
sudo docer run —net = host -e -e conul_bind_interface = eth1 -d conul agent -server
-Bootstrap-Expect = 1
Starten Sie als Nächst. Führen Sie den folgenden Befehl aus und er erledigt den Job für Sie.
sudo docker run -d conul Agent - -reetry -join =
Jetzt können wir dies überprüfen, indem wir die Konsulmitglieder auf dem Konsulserver überprüfen.
sudo docer exec -it 3e9f69fc7e1f Konsulmitglieder
Starten Sie als nächstes den Konsulagenten mit der IP -Adresse der Bind -Schnittstelle mit dem folgenden Befehl.
sudo docker run -d --Name = conulagent1 --net = hostkonsulagenten
--Wiederholung von Join = 192.168.99.100 -bind = 192.168.99.101
Wir haben die Bind -Schnittstelle erfolgreich geändert, aber die Konsul -UI ist uns immer noch nicht verfügbar. Sie müssen Port 8500 auf die ETH1 -Schnittstelle hören, um die Benutzeroberfläche zu erhalten. Führen Sie den folgenden Befehl aus und er erledigt den Job für Sie.
sudo docer run –net = host -e -e conul_bind_interface = eth1 -e conul_client_interface = eth1
-D Consul Agent -UI -Server -bootstrap -expect = 1
In diesem Handbuch haben Sie gelernt, Docker und Konsul in Ihrem System zu installieren. Sie haben auch gelernt, den Konsulserver mithilfe von Docker -Containern zu konfigurieren.