@uzyexe のノート

ITインフラ運用系のネタを主に書く、つもり・・・

CoreOSでPanamaxを動かしてみた。

PanamaxオープンソースのDockerコンテナ管理ツールです。複数のアプリケーションコンテナをリンクさせたやや複雑なDockerベースのマルチコンテナ環境の構築に便利です。

 

これまでDockerコンテナ管理ツールでは、複数のアプリケーションコンテナをリンクで連携させたマルチコンテナ環境の構築はやや手間がかかりましたが、Panamaxではマルチコンテナ環境の構築に必要な工程の一部が自働化され、直感的なWebインターフェイスで操作できるので、複雑なマルチコンテナ環境の構築を手助けしてくれます。また、systemdのunitファイルを自動管理してくれるので、何らかの理由でコンテナを搭載しているホストが再起動しても、再起動後にはコンテナが自動起動してくれるところまで勝手にやってくれます。つまるところ、ユーザーにとってはdocker+fleet+etcd+systemdのCLIオペレーションが一部不要になります。

 

Panamaxの大まかな概要は下記スライドに記載されています。

 

CoreOS上でのPanamaxのインストール手順は下記のとおりです。

 

インストール完了後、PanamaxをインストールしたCoreOSホストのhttp:// Public_IP :3000/ にブラウザからアクセスすることでPanamaxのWeb管理インターフェイスが開けます。

f:id:uzy_exe:20140814022214p:plain

Panamaxでは複数のアプリケーションコンテナからなるコンテナのセットを「テンプレート」として扱います。現在、Panamaxの公式テンプレートではWordpressDrupalRailsなどのテンプレートが用意されてます。

f:id:uzy_exe:20140814022230p:plain

 

試しにWordpressのテンプレートをRun Templateで実行すると、WordpressMySQLが自動的にリンクされたDockerコンテナのセットがワンクリックでプロビジョニングされます。

f:id:uzy_exe:20140814024431p:plain

 

Panamaxの注意点としては、Panamaxテンプレートからコンテナを起動すると、コンテナには各テンプレートであらかじめ指定されているポートが使用されるのですが、同一テンプレートからコンテナを起動すると使用するポートが重複してしまうため、後から起動しようとしたコンテナの起動に失敗してします。

 

個人的にはPanamaxはdockeruiやshipyardよりも便利なので、しばらく主力で使っていこうと思います。