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
Why Docker?
Search
AGAWA Koji
April 27, 2016
Programming
3
200
Why Docker?
社内勉強会用
AGAWA Koji
April 27, 2016
Tweet
Share
More Decks by AGAWA Koji
See All by AGAWA Koji
Software Architecture in an AI-Driven World
atty303
69
31k
PipeCDプラグインへの期待 / Anticipating PipeCD Plugins
atty303
0
53
EmscriptenでC/C++アプリをWASM化してブラウザで動かしてみた
atty303
0
370
良いソフトウェアとコードレビュー / Good software and code review
atty303
38
18k
Scala + Caliban で作るGraphQL バックエンド / Making GraphQL Backend with Scala + Caliban
atty303
0
510
Scala.jsとAndroidでドメイン層を共有しよう / Scala.js and Android
atty303
0
720
もう一つのビルドツール mill で作る Docker イメージ / Build docker image with mill the yet another build tool
atty303
2
2.3k
Case of Ad Delivery System is Implemented by Scala and DDD
atty303
4
3.4k
ログのメトリックを取ってみる話
atty303
0
940
Other Decks in Programming
See All in Programming
JSAI2025 RecSysChallenge2024 優勝報告
unonao
1
380
REST API設計の実践 – ベストプラクティスとその落とし穴
kentaroutakeda
2
320
CQRS/ESのクラスとシステムフロー ~ RailsでフルスクラッチでCQRSESを組んで みたことから得た学び~
suzukimar
0
190
推論された型の移植性エラーTS2742に挑む
teamlab
PRO
0
150
MLOps Japan 勉強会 #52 - 特徴量を言語を越えて一貫して管理する, 『特徴量ドリブン』な MLOps の実現への試み
taniiicom
2
570
がんばりすぎないコーディングルール運用術
tsukakei
1
180
Spring gRPC で始める gRPC 入門 / Introduction to gRPC with Spring gRPC
mackey0225
0
110
TypeScript だけを書いて Tauri でデスクトップアプリを作ろう / Tauri with only TypeScript
tris5572
2
530
型付け力を強化するための Hoogle のすゝめ / Boosting Your Type Mastery with Hoogle
guvalif
1
230
Perlで痩せる
yuukis
1
660
rbs-traceを使ってWEARで型生成を試してみた After RubyKaigi 2025〜ZOZO、ファインディ、ピクシブ〜 / tried rbs-trace on WEAR
oyamakei
0
1k
事業戦略を理解してソフトウェアを設計する
masuda220
PRO
3
350
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Stop Working from a Prison Cell
hatefulcrawdad
269
20k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Statistics for Hackers
jakevdp
799
220k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
750
It's Worth the Effort
3n
184
28k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Transcript
Why Docker ? @atty303
ͳͥ Docker(ίϯςφ)ͳͷ͔?
ܭࢉϦιʔεར༻ͷ ࠷దԽ
…ͷಓΛΓ։͘ͷ
Docker ొͷഎܠ 4 Docker dotCloud ͱ͍͏ PaaS ϓϩόΠμʔ͕ࣗࣾϓ ϥοτϑΥʔϜΛΦʔϓϯιʔεԽͨ͠ͷ
4 PaaS ϓϩόΠμʔʹͱͬͯϦιʔεར༻ͷ࠷దԽར ӹʹ݁͢Δ 4 Google Docker Ͱͳ͍͕શͯͷαʔϏεΛίϯςφ (Borg)Ͱಈ͔͍ͯ͠Δ 4 େͳϦιʔεͷ࠷దԽڝ૪ྗͷݯઘ
ԾϚγϯͱίϯςφ 4 ԾϚγϯͰཻ͕େ͖͍ 4 ίϯςφϓϩηεཻ 4 ੜͷ Linux ϓϩηεͰڥͷִ͕ෆे 4
chroot cgroup ͳͲ… 4 ϓϩηεͷΑ͏ʹܰྔͰԾϚγϯͷΑ͏ʹಠཱ͍ͯ͠Δ ͷ͕ίϯςφ
࠷దԽؔ࿈ 4 ίϯςφεέδϡʔϦϯά 4 Docker Swarm 4 Google Kubernetes 4
Apache Mesos 4 HashiCorp Nomad 4 Datacenter as a Computer 4 ϗετ୯ҐͰߟ͑ΔͷͰͳ͘ɺෳͷϗετΛ1ͭͷڊେͳίϯϐ ϡʔλͱΈͳ͢
ΞϓϦέʔγϣϯͷཻ
ैདྷ
Docker
ΞϓϦέʔγϣϯࢹ 4 ΞϓϦ͕ґଘ͢ΔશͯͷϥϯλΠϜΛಉࠝͰ͖Δ 4 ϗετϚγϯͷঢ়ଶΛߟ͑ͳͯ͘ྑ͍ͷͰ͖ͳΑ͏ʹίϯςφ ʹΠϯετʔϧͰ͖Δ 4 ίϯςφͷϏϧυৗʹಉ͡ঢ়ଶ͔Βελʔτ͠લఏ݅ΛݻఆͰ͖ ΔͷͰ Chef
ͷΑ͏ͳঢ়ଶཧ͕ෆཁʹͳΔ 4 γΣϧεΫϦϓτͰγϯϓϧʹΠϯετʔϧ 4 Ϗϧυͨ͠ίϯςφͲ͜Ͱಈ͔͢͜ͱ͕Ͱ͖Δ 4 ϩʔΧϧɺCIڥɺຊ൪ڥ…
ϗετࢹ 4 ϗετϚγϯ Docker daemon ͚ͩಈ͔͓͚ͯ͠શͯ ͷΞϓϦ͕ಈ͘ 4 ͨͩ͠ίϯςφεέδϡʔϦϯάͱ͍͏৽͍͠՝͕ൃ ੜ͢Δ
4 ϗετΛϩʔϧผʹ Chef ͳͲͰཧ͢Δඞཁ͕ແ͘ͳΔ 4 Ή͠Ζϗετ OS ͕ݶΓͳ͘ബͯ͘ྑ͍ → CoreOS
·ͱΊ
Docker Ͱ͍͠ͱ͜Ζ 4 ίϯςφεέδϡʔϦϯά 4 σʔλ(ϘϦϡʔϜ)ӬଓԽ 4 ΦʔέετϨʔγϣϯ 4 ίϯςφ୯ମΛಈ͔͢ͷ؆୯ɺίϯςφಉ࢜Λڠௐͤ͞
Δͷ͕͍͠
Docker Λ͏͖Ͱͳ͍ͱ͖ 4 ·ΘΓʹࣝऀ͕ډͳ͍ɺ͔ͭࣗྗͰؤுΔؾྗ͕ͳ͍ͱ͖ 4 PaaS (EBS, AppEngine, Heroku) ͰࣄΓΔͱ͖
ݸਓతͳײ ࠓ·Ͱ Docker Λར༻͢ΔϝϦοτΑΓ ֶशɾӡ༻ίετͷ΄͏͕ॏ͔ͬͨҹͰ͕͢ɺ Docker ͷόʔδϣϯΞοϓΤίγεςϜͷॆ࣮ʹΑΓ όϥϯε͕औΕΔΑ͏ʹͳ͍ͬͯΔͱࢥ͍·͢ɻ ·ͩίετͷ΄͏͕ॏ͍͔͠Ε·ͤΜ͕ɺ ઌߦࢿͱࢥͬͯಋೖͯ͠ΈͯΑ͍ͷͰͳ͍Ͱ͠ΐ͏͔ɻ