2016-11-07 3 views
0

erstellen Ich habe die docker swarm instructions folgende und kommen zu dem ‚die Swarm-Manager starten‘ wo ich gesagt habe diesen Befehl zu erteilen:Docker Schwarm Befehl Differenz

docker-machine create -d virtualbox --swarm --swarm-master --swarm-discovery token://2144765674e460fbd53cf4bfcfb59207 swarm-master

Kann jemand erklären den Unterschied zwischen diesen kann der create Befehl ausgegeben ich früher:

docker-machine create -d virtualbox local

in beiden Fällen scheinen Sie etwas auf virtualbox zu erschaffen - ist das in auf Du machst einen Sklaven und den anderen einen Meister?

Antwort

1

Der erste Befehl erstellt eine neue virtuelle VM. Sie müssen dann den Befehl docker run swarm create ausführen, um ein Erkennungs-Token mit dem zentral gehosteten Swarm Discovery-Dienst von Docker zu generieren. Die anderen Knoten (einschließlich des Managers) sind alle mit diesem eindeutigen Token verbunden.

Der zweite Befehl erstellt tatsächlich die Swarm-Manager-Maschine. Die erste Maschine (local) tut eigentlich nichts (außer den Container laufen zu lassen, um das Token zu generieren), also kann man nach dem Generieren und Speichern der Maschine diese Maschine wahrscheinlich töten. Es gibt auch keinen Grund, warum Sie das nicht einfach (unter Verwendung von docker run swarm create) auf einer lokalen Docker-Installation generieren könnten (falls Sie eine haben) und die Erstellung der local VM insgesamt überspringen.

Erwähnenswert ist auch die "alte" Art, einen Docker Swarm Cluster zu erstellen. Wenn Sie zu diesem "frischen" Zeitpunkt kommen, ist das aktuelle "Best Practice", den Docker Swarm Mode (Engine Version 1.12 und höher) zu verwenden. Nativ in die Engine integriert und mit weniger Komplexität/externen Abhängigkeiten.

Weitere Informationen über Docker Swarm Mode here und eine Antwort auf SO (von mir) explaining the differences here.

Verwandte Themen