最近、LinActionさんと一緒にDockerのハンズオンをSoftLayer上で行ったり、SoftLayerでDockerを利用するユーザーがでてきたり、遅ればせながらDockerに触れることがぼちぼちでてきたました。そんな中、Publickeyさんの記事、Docker Cloud 1.0登場へ。買収したTutumをリブランドしDocker Hub と統合をみたので早速試してみることにしました。
Docker Cloudのアーキテクチャ
Dockerが最近買収したTutumのページに概要が載っていましたので、こちらを参考にするといいでしょう。
- Nodeは、仮想マシンだったり、物理サーバーだったり、アプリケーションを展開する先になります。実際にNodeは、SoftLayerをはじめ、Azure, AWS, DigitalOcean, Packetに作成できます。
- Node Clusterは、Nodeをクラスタ化したものです。
- Containerは、アプリケーションを構成するビルディングブロックです
- Serviceは、サービスはコンテナの集まったものです。異なるNodeでアプリケーションをスケールさせる事ができます。
なにはともあれ、Docker Cloudよりサインアップ
サインアップ後、作成されたアカウントでログイン
Docker Cloudを利用する手順
Docker Cloudを利用する場合、一般的には、最初に利用するクラウドを登録し、Nodeを作成し、Serviceを作成し、Stackを作成、Repositoryに登録という流れになります。
利用するクラウドの登録
私は、SoftLayerとDegitalOceanを登録してました。Packetというクラウドも気になります。Packetクラウドは、どうもSoftLayerと同様のベアメタルクラウドのようです。今度時間があれば試したいと思います。その他、github、emailやslackを登録したい場合は登録します。
コンテナノードを作成する際に、クレジットカード情報を登録しておく必要があります。
Nodeの作成
今回はSoftLayer上にNodeを作成することにしました。1ノードあたり、$0.02/時かかるようです。
Serviceの作成
Nodeの作成が完了したらServiceの作成です。今回はテスト的に、dockercloud/hello-worldというイメージを展開してみたいと思います。Docker Hubにある自分のDocker Imageも利用できます。
Portsで、Publishedをチェックして、Create and deployをクリックします。
表示されるURLにアクセスして正しく展開されたか確認します。
今回は基本的な事のみ試してみましたが、他にもCLIを利用できたり、Load Balancerを配置したりできるようです。詳しくはKnowlege Baseを参照ください。また、APIも公開されていますので、プログラムから操作することも可能です。
以上