Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DockerでPaaSをつくる #ylug_111
Search
taichi nakashima
May 30, 2014
Technology
12
3.5k
DockerでPaaSをつくる #ylug_111
http://kernel.doorkeeper.jp/events/10433
taichi nakashima
May 30, 2014
Tweet
Share
More Decks by taichi nakashima
See All by taichi nakashima
Platform Engineering at Mercari
tcnksm
7
3.3k
Embedded SRE at Mercari
tcnksm
0
1.3k
How We Harden Platform Security at Mercari
tcnksm
2
1.6k
SRE Practices in Mercari Microservices
tcnksm
11
12k
開発者向けの基盤をつくる
tcnksm
38
11k
How We Structure Our Work At Mercari Microservices Platform Team
tcnksm
11
22k
Microservices Platform on Kubernetes at Mercari
tcnksm
16
16k
Introduction to Mercari Micorservices Platform Team
tcnksm
5
3.4k
Continuous Delivery for Microservices with Spinnaker at Mercari
tcnksm
15
2.5k
Other Decks in Technology
See All in Technology
オーナーシップを持つ領域を明確にする
konifar
13
3.1k
反実仮想機械学習とは何か
usaito
PRO
8
3k
継続的な改善 x ⾮連続的な進化
sansantech
PRO
3
130
アクセス制御にまつわる改善 / Improving access control
itkq
0
510
〜小さく始めて大きく育てる〜データ分析基盤の開発から活用まで
kniino
0
2.1k
コンテナセキュリティの基本と脅威への対策
kyohmizu
3
750
コンパウンドスタートアップのためのスケーラブルでセキュアなInfrastructure as Codeパイプラインを考える / Scalable and Secure Infrastructure as Code Pipeline for a Compound Startup
yuyatakeyama
4
4.6k
EMとして2023年度に頑張ったこと / What we did well in FY2023 as a EM
pauli
1
160
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
2
430
開発生産性向上サービスを作るFindyが自分たちで開発生産性を爆上げした組織づくりの歩み / Findy's path to boosting its own development productivity 2024-04-17
ma3tk
3
600
Oracle Cloud Infrastructure:2024年4月度サービス・アップデート
oracle4engineer
PRO
1
180
Postman v10リリース後を振り返る / Looking back at Postman v10 after release
yokawasa
1
150
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
132
6.3k
Building Applications with DynamoDB
mza
88
5.6k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
6.9k
Art, The Web, and Tiny UX
lynnandtonic
289
19k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
GraphQLとの向き合い方2022年版
quramy
32
12k
A designer walks into a library…
pauljervisheath
200
23k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
120
39k
Stop Working from a Prison Cell
hatefulcrawdad
266
19k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
Visualization
eitanlees
136
14k
Transcript
Build your own PaaS by Docker
I’m Taichi Nakashima Twitter ID is @deeeet
http://deeeet.com/writing
DockerΛͬͯOSSͳPaaSΛߏங͢Δ ϓϩδΣΫτͷհ
Why PaaS by ?
࣮ߦڥ: Dyno (base on LXC) Ϗϧυ: Slug compiler (buidpack) ىಈ:
Procfile $ git push heroku master
• ContainerܕԾԽ͕؆୯ʹͳͬͨ • ʢ Buildpack͕ެ։͞Ε͍ͯΔʣ Why ?
Ruby https://github.com/heroku/heroku-buildpack-ruby Node.js https://github.com/heroku/heroku-buildpack-nodejs Clojure https://github.com/heroku/heroku-buildpack-clojure Python https://github.com/heroku/heroku-buildpack-python Java https://github.com/heroku/heroku-buildpack-java
Gradle https://github.com/heroku/heroku-buildpack-gradle Scala https://github.com/heroku/heroku-buildpack-scala Play https://github.com/heroku/heroku-buildpack-play Buildpack
Flynn Building https://github.com/CenturyLinkLabs/building https://flynn.io/ dokku https://github.com/progrium/dokku
dokku Docker ʹΑΔmini-Heroku 100ߦͷBashͰॻ͔ΕͨγϯϓϧͳPaaS࣮
࣮ߦڥ: Dyno (base on LXC) Ϗϧυ: Slug compiler (buidpack) ىಈ:
Procfile $ git push heroku master ࣮ߦڥ: Docker (progrium/buildstep) Ϗϧυ: builderεΫϦϓτ (buidpack) ىಈ: Procfile $ git push dokku master dokku
Building buildpackΛͬͨDocker Containerͷ࡞ ΧδϡΞϧʹHeroku on DockerΛ࣮ݱ͢Δ
࣮ߦڥ: Docker (ctlc/buildstep) Ϗϧυ: builderεΫϦϓτ (buidpack) ىಈ: Procfile $ building
-p 3000 tcnksm/myapp ࣮ߦڥ: Docker (progrium/buildstep) Ϗϧυ: builderεΫϦϓτ (buidpack) ىಈ: Procfile $ git push dokku master Building dokku
Prepare $ gem install building Building
Run $ cd your-application $ building -p 3000 tcnksm/myapp 1.
ઐ༻ͷDockerfileͷੜ 2. ImageͷϏϧυ 3. Containerͷىಈ Building
Dockerfile FROM ctlc/buildstep ! ADD . /app #1)ΞϓϦέʔγϣϯͷՃ RUN /build/builder
#2)ΞϓϦέʔγϣϯͷผ/Ϗϧυ CMD /start web #3) Procfileʹج͖ͮΞϓϦέʔγϣϯͷىಈ
++
Flynn Next generation open source Platform as a Service (PaaS)
• 12 factor AppͷΑ͏ͳαʔϏεΛ࡞Δ • 2ͭͷlayerͰߏ͞ΕΔ • CoreOSͷetcdʹΑΔαʔϏεσΟεΧόϦ (layer0) •
HerokuͷΑ͏ͳΞϓϦέʔγϣϯͷσϓϩΠ/Ϗϧυ (layer1) • Herokuͷ؆ศ͞ͱEC2ͷࣗ༝Λ݉Ͷඋ͑Δ Flynn
DockerΛͬͯOSSͳPaaSΛߏங͢Δ ϓϩδΣΫτͷհ Conclusion
Reference • Inside Dokku in 5 minutes • http://banyan.me/slides/20140116/slides.html •
The Start of the Age of Flynn • http://progrium.com/blog/2014/02/06/the-start-of-the-age-of-flynn/ • Flynn vs. Deis: The Tale of Two Docker Micro-PaaS • http://www.centurylinklabs.com/flynn-vs-deis-the-tale-of-two-docker-micro-paas-technologies/