Docker Swarm の初期化
このステップでは、LabEx 仮想マシン上で Docker Swarm を初期化します。Docker Swarm は、Swarm モードで実行されている Docker ホストのクラスターです。Swarm モードを使用すると、Docker ノードのクラスターを単一の仮想システムとして管理することができます。
Swarm を初期化する前に、仮想マシンにインストールされている現在の Docker バージョンを確認しましょう。
docker version
以下のような出力が表示され、Docker バージョンが 20.10.21 であることが示されます。
Client: Docker Engine - Community
Version: 20.10.21
API version: 1.41
Go version: go1.18.9
Git commit: baeda1f
Built: Tue Oct 25 18:01:18 2022
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.21
API version: 1.41 (minimum version 1.12)
Go version: go1.18.9
Git commit: 363bd3a
Built: Tue Oct 25 17:59:35 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.10
GitCommit: b4bd5d2bb63a5d10182b7e90689158e7c7b9b06b
runc:
Version: 1.1.4
GitCommit: v1.1.4-0-g5fd4c4d
docker-init:
Version: 0.19.0
GitCommit: de40ad0
では、Docker Swarm を初期化しましょう。Swarm を初期化すると、現在のノードが最初のマネージャーノードになります。マネージャーノードは、Swarm の管理タスクを処理します。例えば、Swarm の状態を維持したり、サービスをスケジュールしたり、Swarm モード API を提供したりします。
docker swarm init
コマンドを使用して Swarm を初期化します。他のノードが仮想マシンの IP アドレスを使用して Swarm に参加できるように、アドバタイズアドレスを指定します。YOUR_VM_IP_ADDRESS
を LabEx 仮想マシンの実際の IP アドレスに置き換えてください。この IP アドレスは、LabEx 環境の詳細で確認できます。
docker swarm init --advertise-addr YOUR_VM_IP_ADDRESS
コマンドを実行すると、Swarm が初期化されたことを示す出力が表示され、他のノードがワーカーとして Swarm に参加するためのコマンドが提供されます。次のステップで必要になるので、この参加コマンドを控えておいてください。
Swarm initialized: current node (xxxxxxxxxxxx) is now a manager.
To add a worker to this swarm, run the following command on the worker node:
docker swarm join --token SWMTKN-1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxx YOUR_VM_IP_ADDRESS:2377
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.