120315 cloud founry_java_ironfoundry
DESCRIPTION
The 5th Cloud Foundry Code Reading in Japan.How to deploy to Cloud Foundry from Jenkins using Maven plugin for Cloud Foundry.Remote Debugging new feature in Micro Cloud Foundry.Short introduction for IronFoundry.TRANSCRIPT
Java 開発ネタ+Iron Foundry の紹介
#cfcrjp Cloud Foundry 輪読会 第 5 回@tanaka_733
Twitter: @tanaka_733 ブログ : 銀の光と碧い空 ごった煮なブログ
◦ Silverlight◦ Node.js◦ Azure◦ KINECT◦ Windows Phone 7◦ Tomcat◦ etc…
自己紹介
2012/3/15第 5 回 Cloud Founry 輪読会 2
こんな Tweet が流れたので・・・
2012/3/15第 5 回 Cloud Founry 輪読会 3
Jenkins から Cloud Foundy へ Push するネタに力を入れました
vcap/java-client を使って
Jenkins から push してみる
Maven Plugin を使ってみる
2012/3/15第 5 回 Cloud Founry 輪読会 4
ビルドとかテストとかめんどいですね そこで Jenkins を使う Jenkins でテストが通ったらデプロイすればいい あれ、 CloudFoundry のアプリの場合、どうすん
の?
Java で CI といえば Jenkins
2012/3/15第 5 回 Cloud Founry 輪読会 5
GitHub で公開◦https://
github.com/cloudfoundry/vcap-java-client 内容は 2 つ
◦cloudfoundry-client-lib RestTemplate を使った VMC の Java 版クライ
アント◦cloudfoundry-maven-plugin Maven Plugin として使えるクライアント cloudfoundry-client-lib を使用
vcap/java-client
2012/3/15第 5 回 Cloud Founry 輪読会 6
Windows7 上に構築◦Git を入れておく
Jenkins に git plugin を入れておく JDK のセットアップ
◦JDK1.6u30 を使用◦パスの手動指定推奨
Maven のセットアップ◦Maven2.2.1 を使用◦パスの手動指定推奨
Jenkins をセットアップ
2012/3/15第 5 回 Cloud Founry 輪読会 7
Jenkins をセットアップ
2012/3/15第 5 回 Cloud Founry 輪読会 8
git clone https://github.com/SpringSource/cloudfoundry-samples.git
この中にいろいろ sample があります 今回はシンプルな hello-java で
cloudfoundry-samples で試す
2012/3/15第 5 回 Cloud Founry 輪読会 9
Git を指定して入力◦Repo URL は file:///C:/ 形式で OK
Job を作成 (1)
2012/3/15第 5 回 Cloud Founry 輪読会 10
Maven の呼び出しで、 POM を指定 ゴールは clean package とりあえず一度実行して war ができるか
確認
Job を作成 (2)
2012/3/15第 5 回 Cloud Founry 輪読会 11
Maven の呼び出しを追加 ゴールは cf:push プロパティで target, アカウント , パス
ワードを指定
Job を作成 (3)
2012/3/15第 5 回 Cloud Founry 輪読会 12
なぜかプロジェクトページの設定は間違っている◦https://
github.com/cloudfoundry/vcap-java-client/tree/master/cloudfoundry-maven-plugin
◦ソースを読んだり、リポジトリを見て修正!◦詳細は次ページ
ローカルの修正でも git add と git commit すること!
pom.xml を追記して push させる
2012/3/15第 5 回 Cloud Founry 輪読会 13
<build>
<plugins>
<plugin>
<groupId>org.cloudfoundry</groupId>
<artifactId>cf-maven-plugin</artifactId>
<version>1.0.0.M1</version>
<configuration>
<server>mycloudfoundry-instance</server>
<target>http://api.cloudfoundry.com</target>
<appname>hello-spring773</appname>
<url>hello-spring773.cloudfoundry.com</url>
<memory>512</memory>
</configuration>
</plugin>
</plugins>
</build>
<pluginRepositories>
<pluginRepository>
<id>repository.springframework.maven.milestone</id>
<name>Spring Framework Maven Milestone Repository</name>
<url>http://maven.springframework.org/milestone</url>
</pluginRepository>
</pluginRepositories>
正しい pom.xml の追記部分
2012/3/15第 5 回 Cloud Founry 輪読会 14
無事 push できました
2012/3/15第 5 回 Cloud Founry 輪読会 15
他にも、 VMC のコマンドは一通りたたけるらしい
2 回目以降は cf:update で
2012/3/15第 5 回 Cloud Founry 輪読会 16
Java Remote Debugging と
そのソースコードRemote Debug できれば最強?
2012/3/15第 5 回 Cloud Founry 輪読会 17
Micro Cloud Foundry の最新版本家 Cloud Foundry.com でもその
うちという期待・・・
Java の Remote Debugging が可能に
2012/3/15第 5 回 Cloud Founry 輪読会 18
2012/3/15第 5 回 Cloud Founry 輪読会 19
Java Web プロジェクトを作成してデバッグポイントを指定
2012/3/15第 5 回 Cloud Founry 輪読会 20
STS のプラグインから CreateStart はしない
2012/3/15第 5 回 Cloud Founry 輪読会 21
Restart のとなりからデバッグ起動
2012/3/15第 5 回 Cloud Founry 輪読会 22
アクセスすると見事にブレーク!
これのはず◦https://github.com/cloudfoundry/vcap/commit/7867815b2d9231a236deb0a0c374f9e673185cc7
輪読会らしく、ソースを追わないと。。。
さて、これを実現したコミットは・・・
2012/3/15第 5 回 Cloud Founry 輪読会 23
デバッグモード指定時にJAVA_OPTS でデバッグを指定している
その他の変更はデバッグ可・不可のフラグと、デバッグモードのフラグ・・・のはず
要は vcap / dea / config / dea.yml
2012/3/15第 5 回 Cloud Founry 輪読会 24
Iron Foundry.NET が動く PaaS
2012/3/15第 5 回 Cloud Founry 輪読会 25
.NET が動く PaaS◦他には Windows Azure◦AppHarbor など
http://www.ironfoundry.org/ Tier3 提供 Cloud Foundry を拡張 Mono ではなくて、Micorosoft .NET Framework
Iron Foundry を知ってますか
2012/3/15第 5 回 Cloud Founry 輪読会 26
対応言語 (Runtime)◦ ASP.NET 4.0◦ Python 2.6.5◦ Java 6◦ Ruby 1.8.7◦ Ruby 1.9.2◦ PHP 5◦ Erlang R14B02◦ Node 0.4.5
対応サービス (Service)◦ mongodb 1.8◦ MS SQL Server 10.50.2500◦ redis 2.2
幅広い対応言語
2012/3/15第 5 回 Cloud Founry 輪読会 27
http://www.ironfoundry.org/download Micro Iron Foundry Droplet Execution Agent .NET
◦ .NET 製 DEA 、 IIS に対応 Developer Tools
◦ Cloud Foundry Explorer WPF 製の管理コンソール。結構便利
◦ Visual Studio Extension VS 拡張で push できる。けど、 VS pro 以上しか使えない。
◦ VMC .NET .NET 版 VMC
2012/3/15第 5 回 Cloud Founry 輪読会 28
いろんなツールを出しています
2012/3/15第 5 回 Cloud Founry 輪読会 29
Cloud Foundry Explorer
WPF 製の GUI クライアント サービスのバインド、 URL マッピングなど
一通りの機能はそろっている 複数のクラウドを同時に表示できる
◦ Cloud Foundry◦ Iron Foundry◦ My Cloud Foundry◦ Micro Cloud Foundry
いんちき WPF アプリが多い中、UI パターン的にも基本に忠実な実装になっている
2012/3/15第 5 回 Cloud Founry 輪読会 30
Cloud Foundry Explorer
普通に ASP .NET 4.0 アプリを作成◦ 無償の VS Web Developer Express で作成できます◦ ASP .NET でも ASP .NET MVC でも Silverlight で
もいいよ プロジェクトを作成したら、リリースビルド プロジェクトフォルダーを指定して push
2012/3/15第 5 回 Cloud Founry 輪読会 31
ASP .NET アプリを push
2012/3/15第 5 回 Cloud Founry 輪読会 32
Release ビルドを指定
2012/3/15第 5 回 Cloud Founry 輪読会 33
push
Micro Cloud Foundry の Iron Foundry 版 http://
help.ironfoundry.org/entries/20950013-micro-cloud-documentation-v1-0-0
Windows Server 2008 R2 Standard Edition◦ ライセンスキーなしの評価版◦ メモリ 1GB で動く◦ HDD は 24GB
Micro Cloud Foundry の導入が必須 Micro Cloud Foundry と同時に動かす必要あり?
◦ 試したものの、まだ動いていないです・・・◦ とりあえす途中経過をおいておきます
2012/3/15第 5 回 Cloud Founry 輪読会 34
Micro Iron Foundry
2012/3/15第 5 回 Cloud Founry 輪読会 35
パスワード設定
2012/3/15第 5 回 Cloud Founry 輪読会 36
C:\IronFoundry\setup\RunSetup.cmd を起動
入力すると、接続できるはずが、なぜか接続に失敗
原因と対応は調査中・・・ ちなみに、 Micro CF とは違って、
普通に Windows Server としてログインしています
2012/3/15第 5 回 Cloud Founry 輪読会 37
Micro CF の ID とパスワードを入力
ご清聴ありがとうございました
2012/3/15第 5 回 Cloud Founry 輪読会 38