17.
ローカルPC
仮想マシン/オーケストレーション製品
クラウド・プロバイダ
Amazon Web Service
Digital Ocean
Google Compute Engine
Microsoft Azure .... etc
OpenStack
Vmware
VirtualBox
Hyper-V ... etcDocker
Machine
VitualBox
(boot2docker)
18.
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 -v
machine 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 クライアントも拾ってきます
19.
ローカルに Docker ホストをたてる
※ 実際には VirtualBox に boot2docker の vm イメージをダウンロードして起動します。
このため、ローカルPCに Virtualbox 4.3.28 がインストールされていることが前提となります。
$ docker-machine create --driver virtualbox host1
『host1』 という名前で Docker ホスト(Virtualbox 上の vm)を構築
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
host1 virtualbox Running tcp://192.168.99.100:2376
構築した Docker ホストの一覧を見る
OK
32.
nginx コンテナを生成して起動!
$ docker-compose up -d
Creating nginx_nginx_1...
Docker Compose で利用してみる
docker ps で確認する
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2a6ab7f5b98a nginx:latest "nginx -g 'daeon 7seconds ago Up 7 seconds 52.69.146.1:80->80/tcp node1/nginx_nginx_1
OK
33.
スケール・アウトしてみる
Docker Compose で利用してみる
docker ps で確認する
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
82caa4b2b626 nginx:latest "nginx -g 'da 4 seconds ago Up 2 seconds 52.69.171.103:80->80/tcp master/nginx_nginx_3
312649a3b648 nginx:latest "nginx -g 'da 5 seconds ago Up 4 seconds 52.69.190.50:80->80/tcp node2/nginx_nginx_2
2a6ab7f5b98a 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=2
$ docker-compose scale nginx=3
Service 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...
34.
ノード数を超えて スケール・アウトしてみる!!
$ docker-compose scale nginx=4
Service 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 ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
82caa4b2b626 nginx:latest "nginx -g 'da 4 seconds ago Up 2 seconds 52.69.171.103:80->80/tcp master/nginx_nginx_3
312649a3b648 nginx:latest "nginx -g 'da 5 seconds ago Up 4 seconds 52.69.190.50:80->80/tcp node2/nginx_nginx_2
2a6ab7f5b98a nginx:latest "nginx -g 'da a minute ago Up About a minute 52.69.146.1:80->80/tcp node1/nginx_nginx_1
エラーw
35.
スケール・インする
$ docker-compose scale nginx=1
Service 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 ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2a6ab7f5b98a nginx:latest "nginx -g 'da a minute ago Up About a minute 52.69.146.1:80->80/tcp node1/nginx_nginx_1
good!
Be the first to comment