現在ではCloudBeesではPaaS環境の提供がなくなっているため本記事は古いものとなります。itpro.nikkeibp.co.jp
無償でJava EE系APがのるPaaSとしてはOpenShiftなどがあります。kikutaro777.hatenablog.com
Java 8が無事にリリースされて、Javaの世界が盛り上がってる気がします(^^)
今日はこれから「JJUGイベント 「祝☆Java 8 Launch」」に参加予定です。
http://jjug.doorkeeper.jp/events/9344
この勢いでJava EE 7も盛り上がると面白そうだなーと思っているのですが(笑)
……
…
3月の初めにTechCrunch Japanで「Java PaaSのCloudBeesが早くもシリーズCで$11.2Mを調達」という記事になっていたCloudBeesを触ってみたところ、なんじゃこりゃーー、ズコーッ、ってくらい簡単にJava EEが使えるクラウドサービスでした。
意外にも日本語で画面キャプチャ付の情報とか少なかったので、まとめてみました。
Herokuや他のクラウドサービスを全て確認したわけではないのですが、GlassFish4やWildFly8まで含めて提供されてるクラウドサービスが他にあるのかなぁ?と(^^;知りたいです。
まずは登録(Sign Up)
サイトにある「Try it for Free!」または右上の「Sing Up」から登録をします。
GitHubやGoogleのアカウントを利用することもできるので、簡単に登録するならそちらが良いかと思います。
無料枠は当然ながら色々制約があるのですが、詳しくは以下Pricingの表にあります。
http://www.cloudbees.com/platform/pricing/devcloud.cb
ユーザ数が3、Jenkinsのビルド時間トータルが月100分、その他に容量やサポートなどありますが、登録時にクレジットカード情報などは不要で、ちょっと試しに使ってみるには、とてもお手軽な感じです。
豊富なメニュー
Sing Up後、以下のような画面が表示されます。
左上の「Click Start」を押すと、アプリケーションの選択肢メニューが出るのですが、これがすごい豊富。
一通りキャプチャしてみました。
Java系ではTomcatをはじめ、Jetty、GlassFish3、GlassFish4、JBoss71、Wildfly8などが選べますし、Play Framework2もあります。GroobyのGrailsやScalaのLift、Node.jsやVert.x、GoやCloujure、Erlang、Rubyなどもあったり。Senchaなんかも。
GlassFish4以外は試せてないのですが、なんかすごい(^^;
あと個人的には「PrimeFaces Showcase」があるのと「with SendGrid」系があって面白かったです。どんなのか、是非試してみなければ。
GlassFish4 Appを選択してみる
とりあえず今回はGlassFish4 Appを選んでみました。
Full PlatformとWeb Profileがちゃんと選べるのですが、とりあえずWeb Profileで。
メニュー選択後、自分の場合は以下Jenkinsのprovisionedの画面が出てきて、少し待つ必要がありました。5分程度でしたが。
で、メニュー選択後、アプリケーションの名前を入れます。
名前を入れて進むと、ソースのリポジトリ、Jenkins、アプリケーション、DBの準備が開始されます。
完了したので、ダイアログを閉じます。
ホーム画面をみると、それぞれできてます。
アプリケーションをみてみると、以下のように表示されます。
URL叩くと、テンプレート的に作成されたアプリケーションが表示されます。
これだけでもうGlassFish4の上にデプロイされたアプリケーションが使える状態です。なんて簡単なんだ!!!
個人的にはすごい感動したのですが(^^;
でも、さらにすごいのはこれから。
コードの取得
ここまででテンプレができていて、Gitのリポジトリも生成されてるので、コードを取得してみます。
メニューの「repos」をみると、GitのURLが確認できます。
普通にコマンドでgit cloneとかしていってもいいのですが、とりあえず自分はNetBeansを使いました。(ちなみにNetBeans 8)
メニューでコピーしたURLと認証情報を入れて、淡々と進めていきます。
cloneされたプロジェクトが表示されます。以下のような感じ。
JSF書いてみた
取得したコードは一旦消して、JSFの簡単なサンプル作ってみました。
プロジェクトのプロパティでGlassFish4を選んでおいて
フレームワークからJSFを選択します。ここではついでにPrimeFacesもつけときました。
で、index.xhtmlを以下のように定義して
<?xml version='1.0' encoding='UTF-8' ?>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:p="http://primefaces.org/ui">
<h:head>
<title>My First app on CloudBees</title>
</h:head>
<h:body>
<h:form>
<p:panel header="PrimeFaces Panel Header">
<p:calendar />
</p:panel>
</h:form>
</h:body>
</html>
ローカルで実行するとこんな感じ。しょぼしょぼですが(^^;
プロジェクトはこんな風に変わってます。
で、コミットしてプッシュします。
これで終了すると…なんと、CloudBees側でJenkinsがプッシュトリガーに自動ビルドを開始して、そのままデプロイしてくれます。マジすか。
自動ビルド&自動デプロイ
上記の操作後にCloudBeesのJenkinsをみるとタスクがピコピコしててビルドしてました(^^;
で、成功すると、そのままデプロイまでしてくれて、さっきローカルで動かしたのと同じアプリケーションがあがってるーーーーー
すごい!
GlassFishやWildFlyをクラウドで利用したい場合って、今の段階だと多くが、仮想マシンを一旦立てて、インストールして…という流れだと思いますが、CloudBeesならAzureのWebサイトみたいな感覚でお手軽に使えてしまうのが嬉しいですね。