https://azure.microsoft.com/ja-jp/services/container-service/
Apache Mesos または Docker Swarm のどちらかのオーケストレーションツールを使ってDockerコンテナを管理するっていうので、今回はDockerSwarmを選択。
構成などについては、こちらのドキュメントをまずは読んでください。
https://github.com/Azure/azure-quickstart-templates/blob/master/101-acs-swarm/docs/SwarmWalkthrough.md
ACSは、ポータルの「テンプレートからデプロイ」でARMテンプレートを使ってデプロイします。
こちらから「テンプレートのデプロイ」を選択します。
ACSのテンプレートはgithubで公開されています。
https://github.com/Azure/azure-quickstart-templates/tree/master/101-acs-swarm (これはDockerSwarmのもの)
実際に使うARMテンプレートはこちら。これを
https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-acs-swarm/azuredeploy.json
「テンプレートの編集」を選んで
ACSのARMテンプレートを貼り付けて保存します。
次に、パラメーターをセットします。
とりあえず、DNSNAMEPREFIX(FQDNにつける識別用プレフィックス)とSSHRSAPUBLICKEY(SSHでアクセスする際のRSA公開鍵)を入力して「OK」を押します。
リソースグループを選ぶなり作成するなりして、リージョンを決めます。
最後に、法律条項を確認して作成します。
デプロイが終わると、以下の2つのFQDNが決定します。
masterFQDN:{DNSNAMEPREFIX}mgmt.japaneast.cloudapp.azure.com
agentFQDN: {DNSNAMEPREFIX}agents.japaneast.cloudapp.azure.com
masterへのssh接続は、以下のようにします。公開鍵が登録されているので、秘密鍵のパスフレーズでログイン出来ます。
$ ssh azureuser@{DNSNAMEPREFIX}mgmt.japaneast.cloudapp.azure.com -A -p 2200
Are you sure you want to continue connecting (yes/no)? yes
Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.19.0-58-generic x86_64)
* Documentation: https://help.ubuntu.com/
System information as of Fri Apr 15 08:28:32 UTC 2016
System load: 0.15 Memory usage: 1% Processes: 98
Usage of /: 5.7% of 28.80GB Swap usage: 0% Users logged in: 0
Graph this data and manage this system at:
https://landscape.canonical.com/
Get cloud support with Ubuntu Advantage Cloud Guest:
http://www.ubuntu.com/business/services/cloud
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
azureuser@xxx:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a161555c072 swarm:1.1.0 "/swarm manage --repl" 10 minutes ago Up 8 minutes 0.0.0.0:2375->2375/tcp containers_swarm_1
058236a13875 progrium/consul "/bin/start -server -" 10 minutes ago Up 8 minutes 0.0.0.0:8300-8302->8300-8302/tcp, 0.0.0.0:8400->8400/tcp, 53/tcp, 53/udp, 0.0.0.0:8500->8500/tcp, 0.0.0.0:8301-8302->8301-8302/udp containers_consul_1
とりあえず動いています。
ここで簡単なWebアプリコンテナを動かしてみます。
以下の内容で、docker-compose.ymlというファイルを作成します。
web:
image: "yeasy/simple-web"
ports:
- "80"
restart: "always"
それから、docker-composeコマンドでコンテナをUPします。
docker ps コマンドで確認できます。
azureuser@xxx:~$ docker-compose up -d
Pulling web (yeasy/simple-web:latest)...
latest: Pulling from yeasy/simple-web
efd26ecc9548: Pull complete
a3ed95caeb02: Pull complete
d1784d73276e: Pull complete
72e581645fc3: Pull complete
9709ddcc4d24: Pull complete
2d600f0ec235: Pull complete
de1491f1bbd4: Pull complete
4becc568d2ff: Pull complete
6aeb62f4b3fa: Pull complete
77144c15ca8f: Pull complete
811db2e8b100: Pull complete
Digest: sha256:35e52520b8f98a092af6ce10c9fdd3ca6ca77f0b79f9d652c29bdd5d17c1c7aa
Status: Downloaded newer image for yeasy/simple-web:latest
Creating azureuser_web_1
azureuser@xxx:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ae8a0ea43b50 yeasy/simple-web "/bin/sh -c 'python i" 23 seconds ago Up 22 seconds 0.0.0.0:32768->80/tcp azureuser_web_1
5a161555c072 swarm:1.1.0 "/swarm manage --repl" 20 minutes ago Up 19 minutes 0.0.0.0:2375->2375/tcp containers_swarm_1
058236a13875 progrium/consul "/bin/start -server -" 20 minutes ago Up 19 minutes 0.0.0.0:8300-8302->8300-8302/tcp, 0.0.0.0:8400->8400/tcp, 53/tcp, 53/udp, 0.0.0.0:8500->8500/tcp, 0.0.0.0:8301-8302->8301-8302/udp containers_consul_1 containers_swarm_1
ブラウザから「{DNSNAMEPREFIX}agents.japaneast.cloudapp.azure.com」へアクセスするとWebアプリの画面が見えます。
0 件のコメント:
コメントを投稿