dockerのキホンその2 docker compose swarm machine 利用編

75
Docker Compose Docker Swarm Docker Machine 利利利 そそそそそそそそそそそ Docker そそそそ そそそそ そそ そ そそ 2015721

Upload: naoki-nagazumi

Post on 14-Aug-2015

355 views

Category:

Technology


2 download

TRANSCRIPT

Docker ComposeDocker SwarmDocker Machine       利用編

そろそろ知っておきたい Docker のキホン その2

2015年7月21日版

自己紹介• 長住 直樹(ながずみ なおき) @nk_ngzm• 社内で技術獲得 & 技術者育成活動 (通称:

CORETECH )を推進しています

本日のテーマ

Docker Compose

Docker Swarm

Docker Machine

留意事項本スライドは 2015 年 7 月の情報を元に作成しました

Docker の開発速度は非常に早く、その情報は生モノのようにすぐに古くなってしまうことにご注意ください

最新情報は Docker 公式ドキュメントでご確認くださいhttp://docs.docker.com/userguide/

DockerCompose

例えば WordPress システム構築

ホストサーバ

(storage)

Data Volumeコンテナ

(web)

WordPressコンテナ

(db)

MySQLコンテナ

データベースファイル

/var/lib/mysql

ポートフォワード

8080:80

コンテナリンク

DB接続

利用者

Data Volume

docker コマンドで構築すると・・・① Data Volume コンテナ (storage)

$ cd [Dockerfileのディレクトリ ]$ vi Dockerfile

# Dockerfile作成

$ docker build -t storage .$ docker run -it --name storage storage

ROM ubuntu:latestMAINTAINER ngzm <[email protected]>

VOLUME /var/lib/mysqlCMD /bin/bash

docker コマンドで構築すると・・・② MySQL コンテナ (db)

③ WordPress コンテナ (web)

$ docker run --name db\

--volumes-from storage\-e MYSQL_ROOT_PASSWORD=password

\-d mysql:5.7

$ docker run --name web\

--link db:mysql\

-p 8080:80\

-d wordpress:latest

コンテナ間のシステム構成を docker コマンドのオプションで指定するのが微妙だ!

Docker Compose を使おう

Docker Compose

Docker Compse は、複数のコンテナから成るシステム構成を設定ファイル( YAML )で定義でき、まとめて構築したり管理したりできるツール

Docker Compose インストール

$ curl -L https://github.com/docker/compose/releases/download/1.3.2/docker-

compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

$ chmod +x /usr/local/bin/docker- compose$ docker-compose -vcompose version 1.3.2

インストール例 ・・・ バイナリをころがすだけ!!

Linux 版 と MAC OS 版があるよ

Docker Compose を使うdocker-compose.yml でシステム構成を定義

storage: build: ./storagedb: image: mysql:5.7 volumes_from: - storage ports: - "3306:3306" environment: MYSQL_ROOT_PASSWORD: passwordweb: image: wordpress:latest links: - db:mysql ports: - "8080:80"

コンテナ間のシステム構成を YAML で定義できる!!

定義内容は、 docker runのオプションとほぼ対応しておりうれしい!!

① Data

Volumeコンテナ

②MySQLコンテナ

③WordPres

sコンテナ

Docker Compose を使う

$ docker-compose build storage

$ docker-compose up -d

Data Volume コンテナイメージ( storage )をビルド

WordPress システムを構成するコンテナを一気に作成して起動

その他 基本的な利用方法

$ docker-compose stop

システムを構成するコンテナを一気に停止

$ docker-compose start (restart)

システムを構成するコンテナを一気に起動 ( 再起動 )

$ docker-compose logs

システムを構成するコンテナのログを見る

$ docker-compose rm

システムを構成するコンテナを一気に削除

DockerSwarm

簡単にスケールさせたい!!システムの可用性を高めたい!!

Docker を複数ホストに分散するよー

複数ホストの Docker を連携させないと ... ( ・ o ・ )

Docker Swarm を使おう

Docker Swarm

Docker Swarm は、複数ホストの Docker をまとめてクラスタリングして、あたかもひとつの Docker エンジンのように扱えるツール!!

Swarm クラスタリングを作ってみる

ホスト1192.168.1.11

ホスト 2192.168.1.12

ホスト 3192.168.1.13

とりあえず Docker Swarm が動作するホストサーバをたてよう!

Swarm クラスタリングを作ってみる

ホスト1192.168.1.11

ホスト 2192.168.1.12

ホスト 3192.168.1.13

次は それぞれに Docker エンジンをインストールしませう

※ 各 Docker サーバは UNIX ドメインソケットだけでなく、 INET ドメインソケットもリスンするように設定を変更しておくこと

Swarm クラスタリングを作ってみる

ホスト1192.168.1.11

ホスト 2192.168.1.12

ホスト 3192.168.1.13

役割• manager• node

役割• node

役割• node

node1 node2 node3

続いて Docker Swarm ノードを構築 そのうちひとつのノードは manager にするよ!

Docker Swarm ノードの作り方

$ docker run --rm swarm create..... e1fc62b24f818a2af00fb4ddb8899965

まずは、任意のホストで create おまじない

$ docker run -p 2377:2375 -d swarm manage\

token://e1fc62b24f818a2af00fb4ddb8899965

ホスト1で Swarm manager コンテナを構築

$ docker run -d swarm join --addr=[ ノード IP アドレス ]:2375\

token://e1fc62b24f818a2af00fb4ddb8899965

各ホストそれぞれで Swarm node コンテナを構築

swarm create すると token と呼ばれる 文字列が表示されるので、これを使って 各node を構成します

Docker Swarm を使ってみる

ホスト1192.168.1.11

ホスト 2192.168.1.12

ホスト 3192.168.1.13

役割• manager• node

役割• node

役割• node

node1 node2 node3

manager にアクセスすると、あたかもひとつの Docker エンジンのように扱うことができるさー

Docker Swarm を使ってみる$ docker -H tcp://192.168.1.11:2377 infoContainers: 0Nodes: 3 agent-2: 192.168.1.13:2375 └ Containers: 0 └ Reserved CPUs: 0 / 1 └ Reserved Memory: 0 B / 514.5 MiB agent-1: 192.168.1.12:2375 └ Containers: 0 └ Reserved CPUs: 0 / 1 └ Reserved Memory: 0 B / 514.5 MiB agent-0: 192.168.1.11:2375 └ Containers: 0 └ Reserved CPUs: 0 / 1 └ Reserved Memory: 0 B / 514.5 MiB

Docker コマンドの接続先に manager の IP アドレスとポートを指定すると、 Docker Swarm クラスタにアクセスできる!!

Docker Swarm を使ってみる

$ docker -H tcp://192.168.1.11:2377 ps$ docker -H tcp://192.168.1.11:2377 images$ docker -H tcp://192.168.1.11:2377 run

いろんな Docker コマンドも普通に使える

環境変数を設定すると、 "-H tcp://[IP アドレス ]:[ ポート ]" が不要になる

$ export DOCKER_HOST=tcp://192.168.1.11:2377$ docker ps -a$ docker run ...

Docker Swarm 内にコンテナ生成

$ docker run -d -p 80:80 --name front1 nginx$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESa4b0755a685 nginx:latest "nginx -g 'daemon of 32 seconds ago Up 27 seconds

192.168.1.12:80->80/tcp front1

Docker Swarm クラスタに nginx コンテナをたててみる

$ docker run -d -p 80:80 --name front2 nginx$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESa4b0755a685 nginx:latest "nginx -g 'daemon of 32 seconds ago Up 27 seconds

192.168.1.12:80->80/tcp front1fa586fafd753 nginx:latest "nginx -g 'daemon of 3 minutes ago Up 3 minutes

192.168.1.11:80->80/tcp front2

もうひとつ nginx コンテナをたててみる

動いた!

filter

$ docker run -d -p 3306:3306 --name mydb mysql$ docker run -d -p 80:80 -e affinity:container==mydb --name web1 nginx$ docker run -d -p 80:80 -e affinity:container!=mydb --name web2 nginx$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES87c4376856a mysql:latest "mysql" 1 minutes ago Up 57 seconds

192.168.1.12:3306->3306/tcp mydba4b0755a685 nginx:latest "nginx " 32 seconds ago Up 27 seconds

192.168.1.12:80->80/tcp web187c4376856a nginx:latest "nginx " 14 seconds ago Up 10 seconds

192.168.1.13:80->80/tcp we2

Container affinity

※ この他に Image affinity とか Label affinity とかもある

filter

$ docker run -d -p 80:80 --name front1 nginx$ docker run -d -p 80:80 --name front2 nginx$ docker run -d -p 80:80 --name front3 nginx$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

a4b0755a685 nginx:latest "nginx -g 'daemon of 32 seconds ago Up 27 seconds 192.168.1.13:80->80/tcp front1

fa586fafd753 nginx:latest "nginx -g 'daemon of 3 minutes ago Up 3 minutes 192.168.1.12:80->80/tcp front2

963841b1388 nginx:latest "nginx -g 'daemon of 3 minutes ago Up 3 minutes 192.168.1.11:80->80/tcp front1

Port filetr

$ docker run -d -p 80:80 --name front4 nginx2015/7/15 00:33:20 Error response from daemon: no resources available to schedule container

DockerMachine

Docker が動くサーバがたくさん増えた!Docker Swarm も増えそうだ!!

ホストサーバのセットアップとか Docker のインストールとか Swarm 構築とかいちいち手作業でやるのは大変!!

Docker Machine を使おう

Docker Machine

Docker Machine は、ローカル あるいは クラウド 上に、 Docker エンジンが動くホスト( vm )を構築したり管理したりできるツール! Docker Swarm クラスタも構築できる。

Vagrant みたいなイメー

ジ?

ローカル PC

仮想マシン/オーケストレーション製品

クラウド・プロバイダ

Amazon Web ServiceDigital OceanGoogle Compute EngineMicrosoft Azure .... etc

OpenStackVmwareVirtualBoxHyper-V ... etcDocker

Machine

VitualBox(boot2docker)

Docker Machine インストール

$ curl -L https://github.com/docker/machine/releases/download/v0.3.0/docker-

machine_darwin-amd64 > /usr/local/bin/docker-machine

$ chmod +x /usr/local/bin/docker-machine$ docker-machine -vmachine version 0.3.0

MAC OS へのインストール例 ・・ バイナリをころがすだけ!!Linux 版 や Windows 版もあるで~

$ curl -L https://get.docker.com/builds/Darwin/x86_64/docker-latest > /usr/local/bin/docker

必要に応じて Docker クライアントも拾ってきます

ローカルに Docker ホストをたてる

※ 実際には VirtualBox に boot2docker の vm イメージをダウンロードして起動します。  このため、ローカル PC に Virtualbox 4.3.28 がインストールされていることが前提となります。

$ docker-machine create --driver virtualbox host1

『 host1 』 という名前で Docker ホスト( Virtualbox 上の vm )を構築

$ docker-machine lsNAME ACTIVE DRIVER STATE URL SWARMhost1 virtualbox Running tcp://192.168.99.100:2376

構築した Docker ホストの一覧を見るOK

Docker ホストを使ってみる

$ eval "$(docker-machine env host1)"

構築した 『 host1 』 ホストをアクティブにするおまじない!!

$ docker-machine env host1export DOCKER_TLS_VERIFY="1"export DOCKER_HOST="tcp://192.168.100.99:2376"export DOCKER_CERT_PATH="/Users/<username>/.docker/machine/machines/host1"export DOCKER_MACHINE_NAME="host1"

Docker ホストを使ってみる

$ docker-machine lsNAME ACTIVE DRIVER STATE URL SWARMhost1 * virtualbox Running tcp://192.168.99.100:2376

もういちど Docker ホスト一覧を見ると・・

アクティブになった!!

$ docker run -d -p 80:80 --name web nginx$ docker ps$ docker stop ...$ docker rm ...

アクティブな Docker ホストにコンテナを生成したりして遊ぶ・・

アクティブな Docker ホストに対しては、普通に Docker コマンドが使用できる

その他 基本的な利用方法

$ docker-machine stop [ ホスト名 ]

Docker ホスト( vm )の停止

$ docker-machine start [ ホスト名 ]

Docker ホスト( vm )の起動

$ docker-machine rm [ ホスト名 ]

Docker ホスト( vm )の削除

全部まとめていい感じに使う

いい感じにやりたいこと

Docker Machine を使って、 Amazon EC2 に Docker が動くホストを数台構築する

同時に、これらのホストをクラスタリングして Docker Swarm 環境を構築しチャウ

この Docker Swarm 環境に、 Docker Compose で コンテナを生成して連携させチャイナ

Amazon Web ServiceAmazon Web Serviceホスト1

DockerMachine

master

ホスト2

node1

ホスト3

node2

DockerSwarm

ホス

ト構

築・管

DockerCompose

コンテナ構築・管

Docker Swarm を構築する

Docker Machine

Docker Swarm

Amazon Web ServiceAmazon Web Serviceホスト1

DockerMachine

master

ホスト2

node1

ホスト3

node2

DockerSwarm

ホスト構築・管理

Docker Swarm を構築する

$ docker-machine create --driver amazonec2\

--amazonec2-access-key [your access-key]\

--amazonec2-secret-key [your secet-key]\

--amazonec2-ami ami-f4b06cf4 \

--amazonec2-region ap-northeast-1 \

--amazonec2-vpc-id [your vcp-id] \

swarm-create

Docker Machine で Docker Swarm クラスタリングを create する用のホスト 『 swarm-create』を構築!!

Docker Swarm を構築する

Tokyo Region

Docker Swarm create おまじない

$ eval $(docker-machine env swarm-create)$ docker run swarm create ...  7d1ca38131c37fe03af760221de31a01

token

Docker Swarm を構築する

Docker Swarm を構築するDocker Machine で Swarm manager となるホスト1 『 master 』 を構築

$ docker-machine create --driver amazonec2\

--amazonec2-access-key [your access-key]\

--amazonec2-secret-key [your secet-key]\

--amazonec2-ami ami-f4b06cf4 \

--amazonec2-region ap-northeast-1 \

--amazonec2-vpc-id [your vcp-id]\

--swarm\

--swarm-master\

--swarm-discovery token://7d1ca38131c37fe03af760221de31a01\ master

token

Docker Swarm を構築するDocker Machine で Swarm node となるホスト2 『 node1 』 を構築

$ docker-machine create --driver amazonec2\

--amazonec2-access-key [your access-key]\

--amazonec2-secret-key [your secet-key]\

--amazonec2-ami ami-f4b06cf4 \

--amazonec2-region ap-northeast-1 \

--amazonec2-vpc-id [your vcp-id]\

--swarm\

--swarm-discovery token://7d1ca38131c37fe03af760221de31a01\ node1

token

Docker Swarm を構築するDocker Machine で Swarm node となるホスト3 『 node2 』 を構築

$ docker-machine create --driver amazonec2\

--amazonec2-access-key [your access-key]\

--amazonec2-secret-key [your secet-key]\

--amazonec2-ami ami-f4b06cf4 \

--amazonec2-region ap-northeast-1 \

--amazonec2-vpc-id [your vcp-id]\

--swarm\

--swarm-discovery token://7d1ca38131c37fe03af760221de31a01\ node2

token

Docker Swarm を構築するSwarm manager のホスト1 『 master 』 に接続、確認

$ eval $(docker-machine env --swarm master)$ docker infoContainers: 4Images: 3Role: primaryStrategy: spreadFilters: affinity, health, constraint, port, dependencyNodes: 3 dm-master: 52.69.171.103:2376 └ Containers: 2 └ Reserved CPUs: 0 / 1 └ Reserved Memory: 0 B / 1.018 GiB └ Labels: executiondriver=native-0.2, kernelversion=3.13.0-53-generic, operatingsystem=Ubuntu 14.04.2 LTS, provider=amazonec2, storagedriver=aufs dm-node1: 52.69.146.1:2376 └ Containers: 1 └ Reserved CPUs: 0 / 1 └ Reserved Memory: 0 B / 1.018 GiB └ Labels: executiondriver=native-0.2, kernelversion=3.13.0-53-generic, operatingsystem=Ubuntu 14.04.2 LTS, provider=amazonec2, storagedriver=aufs dm-node2: 52.69.190.50:2376 └ Containers: 1 └ Reserved CPUs: 0 / 1 └ Reserved Memory: 0 B / 1.018 GiB └ Labels: executiondriver=native-0.2, kernelversion=3.13.0-53-generic, operatingsystem=Ubuntu 14.04.2 LTS, provider=amazonec2, storagedriver=aufsCPUs: 3Total Memory: 3.053 GiB

$ docker-machine create --driver amazonec2\

--amazonec2-access-key [your access-key]\

--amazonec2-secret-key [your secet-key]\

--amazonec2-ami [ami-id of the instance to use] \ --amazonec2-region [region to use]

\ --amazonec2-vpc-id [your vcp-id]

\ [host name]

Docker Machine で AWS にホストを構築するコマンド例

※ Asia Pacific (Tokyo) Region の場合、一部のパラメータは以下のとおり

--amazonec2-ami ami-f4b06cf4 --amazonec2-region ap-northeast-1

※ 他のパラメータは、 AWS のコンソールで調べると分かるはず ....

Tokyo Region

$ docker-machine create --driver [Driver]\

--swarm\

--swarm-master\

--swarm-discovery token://7d1ca38131c37fe03af760221de31a01 \ [host name]

Docker Machine で Swarm manager を構築するコマンド例

$ docker-machine create --driver [Driver]\

--swarm\

--swarm-discovery token://7d1ca38131c37fe03af760221de31a01 \ [host name]

Docker Machine で Swarm node を構築するコマンド例

Docker Compose で利用してみる

Docker Compose

Docker Swarm

Amazon Web ServiceAmazon Web Serviceホスト1

master

ホスト2

node1

ホスト3

node2

DockerSwarm

Docker Compose で利用してみる

DockerCompose

コンテナ構築・管理

Docker Compose で利用してみる

簡単ですが nginx コンテナを作成して起動!

nginx: image: nginx:latest ports: - "80:80"

docker-compose.yml

nginx コンテナを生成して起動!

$ docker-compose up -dCreating nginx_nginx_1...

Docker Compose で利用してみる

docker ps で確認する$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES2a6ab7f5b98a nginx:latest "nginx -g 'daeon 7seconds ago Up 7 seconds 52.69.146.1:80->80/tcp node1/nginx_nginx_1

OK

スケール・アウトしてみる$ docker-compose scale nginx=2Service nginx specifies a port on the host. If multiple containers for this service are created on a single host, the port will clash.

Creating nginx_nginx_2...Starting nginx_nginx_2...

Docker Compose で利用してみる

docker ps で確認する$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES312649a3b648 nginx:latest "nginx -g 'da 5 seconds ago Up 4 seconds 52.69.190.50:80->80/tcp node2/nginx_nginx_22a6ab7f5b98a nginx:latest "nginx -g 'da a minute ago Up About a minute 52.69.146.1:80->80/tcp node1/nginx_nginx_1

ooh!

さらに スケール・アウトしてみる$ docker-compose scale nginx=3Service nginx specifies a port on the host. If multiple containers for this service are created on a single host, the port will clash.

Creating nginx_nginx_3...Starting nginx_nginx_3...

Docker Compose で利用してみる

docker ps で確認する$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES82caa4b2b626 nginx:latest "nginx -g 'da 4 seconds ago Up 2 seconds 52.69.171.103:80->80/tcp master/nginx_nginx_3312649a3b648 nginx:latest "nginx -g 'da 5 seconds ago Up 4 seconds 52.69.190.50:80->80/tcp node2/nginx_nginx_22a6ab7f5b98a nginx:latest "nginx -g 'da a minute ago Up About a minute 52.69.146.1:80->80/tcp node1/nginx_nginx_1

いいね

ノード数を超えて スケール・アウトしてみる!!$ docker-compose scale nginx=4Service nginx specifies a port on the host. If multiple containers for this service are created on a single host, the port will clash.

Creating nginx_nginx_4...unable to find a node with port 80 available

Docker Compose で利用してみる

docker ps で確認する$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES82caa4b2b626 nginx:latest "nginx -g 'da 4 seconds ago Up 2 seconds 52.69.171.103:80->80/tcp master/nginx_nginx_3312649a3b648 nginx:latest "nginx -g 'da 5 seconds ago Up 4 seconds 52.69.190.50:80->80/tcp node2/nginx_nginx_22a6ab7f5b98a nginx:latest "nginx -g 'da a minute ago Up About a minute 52.69.146.1:80->80/tcp node1/nginx_nginx_1

エラー w

スケール・インする$ docker-compose scale nginx=1Service nginx specifies a port on the host. If multiple containers for this service are created on a single host, the port will clash.

Stopping nginx_nginx_3...Stopping nginx_nginx_2...Removing nginx_nginx_3...Removing nginx_nginx_2...

Docker Compose で利用してみる

docker ps で確認する$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES2a6ab7f5b98a nginx:latest "nginx -g 'da a minute ago Up About a minute 52.69.146.1:80->80/tcp node1/nginx_nginx_1

good!

ついでに Volume と Link を試す

冒頭でご紹介した wordpress システムの docker-compose.ymlstorage: build: ./storagedb: image: mysql:5.7 volumes_from: - storage ports: - "3306:3306" environment: MYSQL_ROOT_PASSWORD: passwordweb: image: wordpress:latest links: - db:mysql ports: - "80:80"

Data Volume コンテナイメージ( storage )をビルド

$ docker-compose build storage

ついでに Volume と Link を試す

docker ps で確認する$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES9b214205ddb0 wordpress:latest "/entrypoint.sh 6 seconds ago Up 5 seconds 52.69.146.1:80->80/tcp node1/wp1_web_1bdffe99d4b6e mysql:5.7 "/entrypoint.sh 6 seconds ago Up 5 seconds 52.69.146.1:3306->3306/tcp node1/wp1_db_1

WordPress システムを構成するコンテナを一気に作成して起動$ docker-compose up -d

!!同ノード?

Docker Swarm の注意点

Volume を用いてコンテナが使用するディスクをマウントしたり、

Link を用いて、コンテナ間の連携をさせようとすると、

これらのコンテナは同一ノードに生成されてしまう!!

今だけ?

db と web を別ノードに振り分ける

storage: build: ./storagedb: image: mysql:5.7 volumes_from: - storage ports: - "3306:3306" environment: MYSQL_ROOT_PASSWORD: passwordweb: image: wordpress:latest ports: - "80:80" environment: - "affinity:container!=wp1_db*" environment: WORDPRESS_DB_HOST: 192.168.99.102:3306 WORDPRESS_DB_PASSWORD: password

Link をやめる

links: - db:mysql

追加

db と web を別ノードに振り分ける

docker ps で確認する$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES016e3a049ab3 mysql:5.7 "/entrypoint.sh 6 seconds ago Up 5 seconds 52.69.146.1:3306->3306/tcp node1/wp1_db_18e739ff21dbd wordpress:latest "/entrypoint.sh 6 seconds ago Up 5 seconds 52.69.190.50:80->80/tcp node2/wp1_web_1

WordPress システムを構成するコンテナを一気に作成して起動$ docker-compose up -d

別ノードw

OK!

まとめ

Docker Compose を使うと、幾つかのコンテナで構成されるシステムをまとめて構築したり管理したりできる

必要に応じたスケール管理もできる

Docker Swarm を使えば、複数の Docker をクラスタリングして扱うことができる

Docker Machine を使うと、 Docker ホスト( vm )を1コマンドで構築できる

Docker Swarm ノードを作るのも簡単!

Docker Compose は まあ使えそう、特に Scale できるのはうれしい!!

Docker Swarm と Docker Machine もいい感じに便利 ・・ だが、ベータ版ということもあり 多少!?なところも・・

Docker Swarm • ノードをまたぐ Volume や Link ができない

Docker Machine• Windows 版でローカルな VirtualBox に vm を構築

しようとするとネットワーク( NIC )周りでエラー!利用断念

• AWS に Docker Machine で Swarm ノードを構築した場合、各ノードを再起動すると、 Swarm のノード構成が失われた ・・・ ip アドレスが変わったせいかしら??

!?だったところ

一部ベータ版なので微妙なところもあるが、無事に動くと楽しい!!

皆さんも ぜひ自分でインストールして試してみてください!

これを機会に、複数の Docker使い が誕生することを期待しています

おしまい

ご静聴ありがとうございました