$ docker info
Containers:6
Images: 7
Role: primary
Strategy: spread
Filters: health, port, dependency, affinity, constraint
Nodes: 2
swarm-node0: 188.166.223.157:2376
m Containers: 4
m Reserved CPUs: 0 / 1
m Reserved Memory: 0 B / 514 MiB
m Labels: executiondriver=native-0.2, kernelversion=3.16.0-41-generic, operatingsystem=Ubuntu
14.04.3 LTS, provider=digitalocean, storagedriver=aufs
swarm-node1: 188.166.223.165:2376
m Containers: 2
m Reserved CPUs: 0 / 1
m Reserved Memory: 0 B / 514 MiB
m Labels: executiondriver=native-0.2, kernelversion=3.16.0-41-generic, operatingsystem=Ubuntu
14.04.3 LTS, provider=digitalocean, storagedriver=aufs
CPUs: 2
Total Memory: 1.004 GiB
Name: bea1b4473d7c
Swarm manager で docker info を実行すると、クラスタ情報を表示します。
65.
$ docker networkcreate cms
$ docker network ls
NETWORK ID NAME DRIVER
660a83d7dceb swarm-node1/none null
2f172240c30a swarm-node1/docker_gwbridge bridge
f31873cbef24 cms overlay
570d49557344 swarm-node1/bridge bridge
91a996769d0d swarm-node1/host host
64b008dee355 swarm-node0/docker_gwbridge bridge
7031059b130a swarm-node0/bridge bridge
cmsという名称のオーバレイ・ネットワークを作成します。
※dockerクライアントが操作しているのは、Swarmクラスタです。
特に明示しなければ、自動的にoverlayネットワークが有効になっています。
ただし、この機能はSwarmの各ノードが Linux 3.16以上の必要があります。
66.
$ docker-compose --x-networking--x-network-driver overlay up –d
$ docker-compose ps
Name Command State Ports
--------------------------------------------------------------------------------------------
98531c0a86_cms_web_1 /entrypoint.sh apache2-for ... Up 188.166.223.157:8080->80/tcp
cms_db_1 /docker-entrypoint.sh mysqld Up 3306/tcp
Compose を使って、WordPressを起動します。
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
ebf14768eacb mariadb "/docker-entrypoint.s" 6 days ago Up 26 hours
3306/tcp swarm-node1/cms_db_1
98531c0a8643 wordpress "/entrypoint.sh apach" 6 days ago Up 26 hours
188.166.223.157:8080->80/tcp swarm-node0/98531c0a86_cms_web_1
直接Swarmのリソースプールを操作。コンテナにホスト名が付与されています。
同一ネットワーク上に、Docker Swarm のストラテジとフィルタに従い
コンテナは自動的にスケジューリングされました。
(デフォルトは分散の Spread ストラテジ)