Swarm の生成

チュートリアルでのセットアップ 手順をすべて終えたら、Swarm の生成を行います。 ホストマシン上において Docker Engine デーモンが起動済であることを確認してください。

  1. ターミナル画面を開き、マネージャーノードを起動させたいマシンに SSH 接続します。 このチュートリアルではmanager1というマシン名にします。 Docker Machine を利用している場合は、以下のコマンドを使って SSH 経由で接続することができます。

    $ docker-machine ssh manager1
    
  2. 以下のコマンドを実行して、新規に Swarm を生成します。

    $ docker swarm init --advertise-addr <MANAGER-IP>
    

    メモ: Docker Desktop for Mac または Docker Desktop for Windows 利用し単一ノードの Swarm を生成する場合は、引数なしでdocker swarm initを実行します。 このときには--advertise-addrを指定する必要はありません。 詳しくは Swarm を使った Docker Desktop for Mac または Docker Desktop for Windows の利用 を参照してください。

    このチュートリアルでは、以下のコマンドによりmanager1マシン上に Swarm が生成されます。

    $ docker swarm init --advertise-addr 192.168.99.100
    Swarm initialized: current node (dxn1zf6l61qsb1josjja83ngz) is now a manager.
    
    To add a worker to this swarm, run the following command:
    
        docker swarm join \
        --token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c \
        192.168.99.100:2377
    
    To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
    

    --advertise-addrフラグはマネージャーノードに対して、アドレス192.168.99.100を公開することを指示します。 Swarm 上の他のノードは、マネージャーに対してこの IP アドレスを使ってアクセスしなければなりません。

    出力メッセージには、Swarm に新たなノードを参加させるためのコマンドが示されています。 参加させるノードをマネージャーとするかワーカーとするかは、--tokenフラグに与える値によって決まります。

  3. docker infoを実行して、Swarm の現時点での状態を確認してみます。

    $ docker info
    
    Containers: 2
    Running: 0
    Paused: 0
    Stopped: 2
      ...snip...
    Swarm: active
      NodeID: dxn1zf6l61qsb1josjja83ngz
      Is Manager: true
      Managers: 1
      Nodes: 1
      ...snip...
    
  4. docker node lsコマンドを実行して、ノードに関する情報を確認します。

    $ docker node ls
    
    ID                           HOSTNAME  STATUS  AVAILABILITY  MANAGER STATUS
    dxn1zf6l61qsb1josjja83ngz *  manager1  Ready   Active        Leader
    
    

    ノード ID の横にある*が、現在接続しているノードを表わしています。

    Docker Engine の Swarm モードはマシンホスト名にちなんで、自動的にノードに名称がつけられます。 その他の出力カラムに関しては、後のステップにおいて説明します。

次にすることは

本チュートリアルの次節では、クラスターに対して さらに 2 つのノードを追加 します。

tutorial, cluster management, swarm mode