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.8k
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 (Platform Engineering Kaigi 2024)
tcnksm
6
4.3k
Platform Engineering at Mercari
tcnksm
8
5.2k
Embedded SRE at Mercari
tcnksm
0
1.5k
How We Harden Platform Security at Mercari
tcnksm
2
1.8k
SRE Practices in Mercari Microservices
tcnksm
11
13k
開発者向けの基盤をつくる
tcnksm
38
12k
How We Structure Our Work At Mercari Microservices Platform Team
tcnksm
11
23k
Microservices Platform on Kubernetes at Mercari
tcnksm
16
16k
Introduction to Mercari Micorservices Platform Team
tcnksm
5
3.6k
Other Decks in Technology
See All in Technology
kubellが挑むBPaaSにおける、人とAIエージェントによるサービス開発の最前線と技術展望
kubell_hr
0
290
Eight Engineering Unit 紹介資料
sansan33
PRO
0
3.4k
AIにどこまで任せる?実務で使える(かもしれない)AIエージェント設計の考え方
har1101
3
1k
Securing your Lambda 101
chillzprezi
0
260
ユーザーのプロフィールデータを活用した推薦精度向上の取り組み
yudai00
0
290
Devin(Deep) Wiki/Searchの活用で変わる開発の世界観/devin-wiki-search-impact
tomoki10
0
310
Long journey of Continuous Delivery at Mercari
hisaharu
1
210
Autonomous Database サービス・アップデート (FY25)
oracle4engineer
PRO
2
770
堅牢な認証基盤の実現 TypeScriptで代数的データ型を活用する
kakehashi
PRO
2
220
CIでのgolangci-lintの実行を約90%削減した話
kazukihayase
0
200
RubyOnRailsOnDevin+α / DevinMeetupJapan#2
ginkouno
0
350
TODAY 看世界(?) 是我們在看扣啦!
line_developers_tw
PRO
0
160
Featured
See All Featured
Code Review Best Practice
trishagee
68
18k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Designing Experiences People Love
moore
142
24k
Fireside Chat
paigeccino
37
3.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
16
920
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
It's Worth the Effort
3n
184
28k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Statistics for Hackers
jakevdp
799
220k
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/