Initialisierung eines Swarms mit einer bestimmten Anzeigeadresse (advertise address)
Im vorherigen Schritt haben Sie einen einfachen Docker Swarm initialisiert. In diesem Schritt erfahren Sie, wie Sie einen Swarm initialisieren und die Adresse angeben können, die der Swarm-Manager an andere Knoten weitergibt. Dies ist in Umgebungen mit mehreren Netzwerkschnittstellen nützlich oder wenn Sie kontrollieren möchten, welche Adresse für die Swarm-Kommunikation verwendet wird.
Zunächst müssen Sie den bestehenden Swarm verlassen. Dies können Sie mit dem Befehl docker swarm leave
tun. Da dies der einzige Knoten ist und er ein Manager ist, müssen Sie die Option --force
verwenden.
docker swarm leave --force
Sie sollten eine Ausgabe sehen, die bestätigt, dass der Knoten den Swarm verlassen hat.
Jetzt suchen wir die IP-Adresse Ihres aktuellen Computers. Sie können den Befehl ip addr show
verwenden und nach der IP-Adresse suchen, die mit Ihrer Netzwerkschnittstelle verknüpft ist (häufig eth0
oder ens*
).
ip addr show
Identifizieren Sie die IP-Adresse, die Sie als Anzeigeadresse (advertise address) für den Swarm verwenden möchten. Wenn Ihre IP-Adresse beispielsweise 172.17.0.2
ist, verwenden Sie diese.
Jetzt initialisieren Sie den Swarm erneut, geben diesmal aber die Anzeigeadresse (advertise address) mit der Option --advertise-addr
an. Ersetzen Sie <YOUR_IP_ADDRESS>
durch die tatsächliche IP-Adresse, die Sie gefunden haben.
docker swarm init --advertise-addr <YOUR_IP_ADDRESS>
Sie werden eine Ausgabe ähnlich der einfachen Initialisierung sehen, aber der Join-Befehl wird jetzt die angegebene Anzeigeadresse (advertise address) enthalten.
Um zu überprüfen, ob der Swarm mit der richtigen Anzeigeadresse (advertise address) initialisiert wurde, können Sie den Swarm untersuchen.
docker swarm inspect --pretty
Suchen Sie im Output nach dem Feld AdvertiseAddr
. Es sollte mit der von Ihnen angegebenen IP-Adresse übereinstimmen.