エンタープライズギークス (Enterprise Geeks)

企業システムの企画・開発に携わる技術者集団のブログです。開発言語やフレームワークなどアプリケーション開発に関する各種情報を発信しています。ウルシステムズのエンジニア有志が運営しています。

Cloud9の概要

Cloud9はいわゆるクラウドIDEである。ブラウザからクラウド上の開発環境を操作して開発できる。ローカルマシンに開発環境を構築せず、ブラウザだけあれば開発を始められるので非常に手軽である。先日(2016/7/14)、Amazonが買収したニュースが発表されていたのでご存知の方も多いだろう。

普通、開発者のローカルマシンの開発環境はプロジェクト毎に用意しなければならない。利用するミドルウェアが違ったり、ライブラリのバージョンが異なるからである。クラウド上に開発環境があれば、そのプロジェクトに沿った環境をすぐに使えるので非常に便利である。一見無関係に思えるローカルマシン上のアプリケーションが悪さすることもない。

Cloud9のようなクラウドIDEアジャイル開発との親和性の高さも期待できる。チーム全員が同じワークスペースを利用することで、自然と標準を揃えることができ、無駄な作業を行わなくてよい。

今回はこのCloud9の概要をご紹介する。

まずは使ってみる

開発環境は理屈ではない。使い勝手である。eclipseNetBeansの違いを言葉で比較しても本質はわからない。普通のIDEではダウンロードしてインストールする必要があるので試すだけでも1〜2時間は必要だが、Cloud9はクラウドなので30分もあれば以下の手順で試すことができる。

(1) ブラウザからサイトにいく
ブラウザからCloud9のサイトにいく。

(2) サインインする
Cloud9のサイトの右上にある「SIGN IN」を押す

f:id:enterprisegeeks:20160801181250p:plain

(3) アカウント情報とクレジットカード情報を入力する
ユーザー名などのアカウント情報を入力する。項目数も少ないので簡単である。次にクレジットカード情報を入力する。後述するようにCloud9には幾つかの料金プランがあるが、フリープランであれば無料である。ただし、フリープランを使う場合でもクレジットカード情報は必要である。個人を特定するという意味もあるだろうが、後々有料プランに移行しやすいという提供側の商魂も見える。最後にあなたがロボットではないことにチェックして完了である(残念ながらあなたがロボットだとすればCloud9は利用できない)。

(4) メールが送られてくるのでパスワードを設定する
この状態でCloud9を使いはじめることは出来るが、入力したメールアドレス宛にパスワードを設定するためのメールが並行して送られてきていることだろう。メールにあるURLからパスワード設定画面にいける。開発に夢中になる前にパスワードを設定しておくことを勧める。

(5) ワークスペースを作って開発をはじめる
Cloud9のワークスペースには幾つかの種類がある。

ワークスペースの種類 説明
Hosted workspace Cloud9のクラウドサーバ上に作成するワークスペースである。PublicとPrivateを選べる。Publicは全ての人から参照できるものでオープンソースプロダクトなどの開発に適している。Privateは自分だけに閉じた開発ができる。
Clone workspace 既に存在するワークスペースのクローンとして新しいワークスペースを作成する。
Remote SSH workspace ユーザーのサーバーにあるワークスペースSSHでリモートアクセスする。
Salesforce Salesforceワークスペースである。

今回は試すことが目的なので、Hosted workspaceのPrivateを選択する。

f:id:enterprisegeeks:20160801181122p:plain

最後にワークスペースに適用するテンプレートを選ぶ。HTML5、Node.js、PHPPythonDjangoRubyC++WordpressRails Tutorial、Blank、CS50がある。ちなみにCS50を調べたら、ハーバード大学のコンピューターサイエンスの入門コースであった。このテンプレートの並びを見てもわかるようにJavaは対応していない。しかし、Blankテンプレートを適用したワークスペースのターミナルからjavaコマンドは実行できた。つまりJREは入っている。JDKワークスペースにインストールすれば開発出来るかもしれない。

f:id:enterprisegeeks:20160801181138p:plain

料金プラン

Cloud9の料金プランは次のようになっている。現時点でチーム開発用のTeamsプランはBETAとある。ワークスペースのHotとはワークスペースを起動したままにできるため、次回ワークスペースを素早くオープンできる仕組みである。詳細はCloud9の料金ページを参照して欲しい。

プラン 料金 ワークスペース サポート
Free 無料 Private:1個
Public:無制限
コミュニティで
誰かが答えてくれる
Individual 月額$19 Private:無制限
SSH:無制限 Hot:3個
メール
Teams [BETA] 月額$29/人 Team:無制限
Hot:10個
メール
Enterprise お問い合わせ カスタム プレミアム

少し開発してみる

Pythonのテンプレートを適用したワークスペースで開発をしてみる。ワークスペースには左側にファイル階層が表示され、右側にはソースコードが表示される。下方にはターミナルが表示されbashが使える。キータイプの反応もよく、コマンドを実行しても違和感なく結果が返ってくる。これ本当にブラウザだろうかと疑いたくなるほどである。間違ってMacから「Command+Q」と入力して、ブラウザごと終了してからブラウザであることに気付かされる。

f:id:enterprisegeeks:20160801181201p:plain

ワークスペースクラウド上のVMをまるごと使えるようである。試しに次のコマンドを実行すると現在のPythonテンプレートではDebian4.9系であることがわかる

$ cat /proc/version 
Linux version 4.2.0-c9 (root@11aafb97cfeb) (gcc version 4.9.2 (Debian 4.9.2-10) ) #1 SMP Fri Nov 20 14:49:01 UTC 2015

実際にファイルを読み込むようなPythonプログラムを書いてみたが、問題なく動作した。今回はお試しということで、Cloud9でどこまでのアプリケーションが開発できるか、限界を知ることまでは出来なかったが、大きな可能性があるツールであることはわかった。

[吉原 庄三郎]