O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
はじめてのCF Buildpack
UDCP Kazuto Kusama @jacopen
自己紹介
•

草間 一人(くさま かずと)

•

UDCPメンバー
!

Twitter: @jacopen
• Facebook: jacopen
•
呉鎮守府
UDCP
• Blog (U1TB)
!
!
!
!
!

• 自転車イベント参加
!
!

• おいしいものを食べる
今日のお題
‣ CF v2のBuildpackを触ってみよう!
‣ 経験豊富な人には既知の話が多いかも。
‣ v1ばっかりでv2あんまり経験無いよ、という人向け
Buildpackとは
• Herokuが作った、任意の言
語/フレームワークを利用
できるようになる仕組み
• HerokuのCeder Stackで対応
している言語(Ruby, Java,
Clojure, Node.js, Scala)...
$ heroku create myapp --buildpack https://github.com/heroku/heroku-buildpack-ruby
Third-Party buildpacks
ということで
• とても便利なのでCloud FoundryもBuildpack使えるようにし
たよ! ・・・というのが、v2 CFの大きな特徴。
v2でbuildpackを使ってみよう!
CF PHP & Apache
Buildpack
• mod_phpかphp_fpmかを選べる
• Apache 2.2か2.4かを選べる
CF PHP Example
WordPress
• CF PHP Buildpackで上手く動く
ように作られたWordPressのサ
ンプル。
• といっても大したことはして
いなくて、以下のようなディ
レクトリ分けをしただけ
• Buil...
$ git clone git@github.com:dmikusa-pivotal/cf-ex-worpress.git
$ cd cf-ex-worpress/
$ cf push --buildpack=https://github.co...
_人人人人人人_
> 動かない <
 ̄Y^Y^Y^Y^Y ̄
$ cf logs wpjacopen
VCAP_SERVICES={“mysql-5.5”:[{“name”:”mysqlwpjacopen”,”label”:”mysql-5.5”,”tags":["relational"],"plan":...
その他のCF向けBuildpack
• java buildpack
• https://github.com/cloudfoundry/java-buildpack

• cloudfoundry-buildpack-java
• https...
Community Buildpack
•
•
•
•
•
•
•
•
•
•
•
•
•
•

https://github.com/glyn/virgo-buildpack
https://github.com/jmcc0nn3ll/jet...
HerokuのBuildpackは使えるの?
• 使えるものは使える!
動くことが確認されているHeroku buildpack
•
•
•
•

https://github.com/heroku/heroku-buildpack-php
https://github.com/iphoting/heroku-bu...
自分でBuildpackを作る!
• ほんとはここでこんなBuildpack作ったぜ(ドヤッ)って言い
たかったんだけど・・・

• 時間がありませんでした/(^o^)\

• というか欲しいBuildpack既にあるんだもん・・・
Buildpackの簡単な仕組み解説
• Buildpackの実体は3つのスクリプト
• compile
• detect
• release
compile
• 言語の実行環境をセットアップするためのスクリプト
• バイナリをダウンロードしてきて配置するスクリプトが多い
• PHP buildpackではpythonを使っているが、シェルスクリプト
等でもOK
detect
• buildpackの実行条件を指定するスクリプト。
• PHP buildpackの場合、.phpスクリプトがあればOK。
• OKならばexit 0、NGならばexit 1を返すという決まり。
release
• なんかメタデータとか入れるらしい
Buildpackを自作するための資料
• Heroku reference
• https://devcenter.heroku.com/articles/buildpack-api

• heroku-buildpack-ffmpeg
• h...
質問とかあれば
はじめてのCF buildpack
Próximos SlideShares
Carregando em…5
×

はじめてのCF buildpack

Cloud Foundryでも使えるようになったHeroku Buildpackについて解説します。

はじめてのCF buildpack

  1. 1. はじめてのCF Buildpack UDCP Kazuto Kusama @jacopen
  2. 2. 自己紹介 • 草間 一人(くさま かずと) • UDCPメンバー ! Twitter: @jacopen • Facebook: jacopen •
  3. 3. 呉鎮守府
  4. 4. UDCP • Blog (U1TB) ! ! ! ! ! • 自転車イベント参加 ! ! • おいしいものを食べる
  5. 5. 今日のお題 ‣ CF v2のBuildpackを触ってみよう! ‣ 経験豊富な人には既知の話が多いかも。 ‣ v1ばっかりでv2あんまり経験無いよ、という人向け
  6. 6. Buildpackとは • Herokuが作った、任意の言 語/フレームワークを利用 できるようになる仕組み • HerokuのCeder Stackで対応 している言語(Ruby, Java, Clojure, Node.js, Scala)は、 Buildpackで実装されている
  7. 7. $ heroku create myapp --buildpack https://github.com/heroku/heroku-buildpack-ruby
  8. 8. Third-Party buildpacks
  9. 9. ということで • とても便利なのでCloud FoundryもBuildpack使えるようにし たよ! ・・・というのが、v2 CFの大きな特徴。
  10. 10. v2でbuildpackを使ってみよう!
  11. 11. CF PHP & Apache Buildpack • mod_phpかphp_fpmかを選べる • Apache 2.2か2.4かを選べる
  12. 12. CF PHP Example WordPress • CF PHP Buildpackで上手く動く ように作られたWordPressのサ ンプル。 • といっても大したことはして いなくて、以下のようなディ レクトリ分けをしただけ • Buildpackのコンフィグを オーバーライドするconfig ディレクトリ • PHPやHTMLが入るhtdocs ディレクトリ
  13. 13. $ git clone git@github.com:dmikusa-pivotal/cf-ex-worpress.git $ cd cf-ex-worpress/ $ cf push --buildpack=https://github.com/dmikusa-pivotal/cf-phpapache-buildpack.git
  14. 14. _人人人人人人_ > 動かない <  ̄Y^Y^Y^Y^Y ̄
  15. 15. $ cf logs wpjacopen VCAP_SERVICES={“mysql-5.5”:[{“name”:”mysqlwpjacopen”,”label”:”mysql-5.5”,”tags":["relational"],"plan":"default","credentials": {"name":"dc75750d21df148fc9942cd9b4e996229","hostname":"xxx.xxx.xxx.xxx"," host":"xxx.xxx.xxx.xxx","port": 3307,"user":"xxxxxxxxxxx","username":"xxxxxxxxxxx","password":"xxxxxxxxxxxxxx xxx","uri":"mysql://xxxxxxxxxxxxx:xxxxxxxx@xxx.xxx.xxx.xxx:3307/ dc75750d21df148fc9942cd9b4e996229"}}]}
  16. 16. その他のCF向けBuildpack • java buildpack • https://github.com/cloudfoundry/java-buildpack
 • cloudfoundry-buildpack-java • https://github.com/cloudfoundry/cloudfoundry-buildpack-java • もうメンテされてない?
 • ruby buildpack • https://github.com/cloudfoundry/heroku-buildpack-ruby
 • nodejs buildpack • https://github.com/cloudfoundry/heroku-buildpack-nodejs
 • ibm-websphere-liberty-buildpack • https://github.com/cloudfoundry/ibm-websphere-liberty-buildpack • 良く分からない\(^o^)/
  17. 17. Community Buildpack • • • • • • • • • • • • • • https://github.com/glyn/virgo-buildpack https://github.com/jmcc0nn3ll/jetty-buildpack https://github.com/dmikusa-pivotal/cf-php-apache-buildpack https://github.com/mstine/heroku-buildpack-clojure https://github.com/BrianMMcClain/heroku-buildpack-haskell https://github.com/michaljemala/cloudfoundry-buildpack-go https://github.com/hmalphettes/heroku-buildpack-go https://github.com/Orange-OpenSource/java-buildpack/blob/jonas/docs/ container-jonas.md https://github.com/dmikusa-pivotal/cf-test-buildpack https://github.com/cloudfoundry-community/nginx-buildpack https://github.com/cloudfoundry-community/.net-buildpack https://github.com/ephoning/heroku-buildpack-python https://github.com/joshuamckenty/heroku-buildpack-python https://github.com/cloudfoundry-community/strongloop-suite-buildpack
  18. 18. HerokuのBuildpackは使えるの? • 使えるものは使える!
  19. 19. 動くことが確認されているHeroku buildpack • • • • https://github.com/heroku/heroku-buildpack-php https://github.com/iphoting/heroku-buildpack-php-tyler https://github.com/heroku/heroku-buildpack-python https://github.com/heroku/heroku-buildpack-scala • with https://github.com/jbayer/hello-scala
  20. 20. 自分でBuildpackを作る!
  21. 21. • ほんとはここでこんなBuildpack作ったぜ(ドヤッ)って言い たかったんだけど・・・ • 時間がありませんでした/(^o^)\ • というか欲しいBuildpack既にあるんだもん・・・
  22. 22. Buildpackの簡単な仕組み解説 • Buildpackの実体は3つのスクリプト • compile • detect • release
  23. 23. compile • 言語の実行環境をセットアップするためのスクリプト • バイナリをダウンロードしてきて配置するスクリプトが多い • PHP buildpackではpythonを使っているが、シェルスクリプト 等でもOK
  24. 24. detect • buildpackの実行条件を指定するスクリプト。 • PHP buildpackの場合、.phpスクリプトがあればOK。 • OKならばexit 0、NGならばexit 1を返すという決まり。
  25. 25. release • なんかメタデータとか入れるらしい
  26. 26. Buildpackを自作するための資料 • Heroku reference • https://devcenter.heroku.com/articles/buildpack-api
 • heroku-buildpack-ffmpeg • https://github.com/shunjikonishi/heroku-buildpack-ffmpeg
 構造がシンプルなので、動作の把握にちょうど良いかも
  27. 27. 質問とかあれば

×