建立 Swarm


完成教學設定步驟後,您就可以建立 Swarm。請確定 Docker Engine daemon 已在主機上啟動。

  1. 開啟終端機並透過 ssh 連線到您要執行管理節點的機器。本教學使用名為 `manager1` 的機器。

  2. 執行下列指令來建立新的 Swarm

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

    在本教學中,下列指令會在 `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 模式會自動使用機器主機名稱來命名節點。本教學會在後續步驟中說明其他欄位。

後續步驟

接下來,您將再新增兩個節點到叢集中。