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
DockerCon 2018報告レポート
Search
IppeiSuzuki
July 19, 2018
Technology
2
1.1k
DockerCon 2018報告レポート
DockerCon 2018の出席レポート:
Docker Meetup #24 - 7/19にて報告
https://dockerjp.connpass.com/event/93140
IppeiSuzuki
July 19, 2018
Tweet
Share
Other Decks in Technology
See All in Technology
どうするコスト最適化のトレードオフ
tetsuyaooooo
1
470
20240418_Google ColabにLLMが搭載されたようなのでPython x データ分析の勉強方法を考えてみる
doradora09
0
120
On Your Data を超えていく!
hirotomotaguchi
2
640
反実仮想機械学習とは何か
usaito
PRO
8
3k
Google Cloud の AI を支える裏側のインフラを垣間見る!
maroon1st
0
330
2024/4/26 コンピュータ歴史博物館解説告知
toshi_atsumi
0
210
AOAI をきっかけに 社内の Azure 管理を見直した話
recruitengineers
PRO
1
230
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
140
Java EE/Jakarta EEの現状と将来―クラウドネイティブ時代にJava EEは対応できるのか?―
takakiyo
1
130
少数チームで挑む: SwiftUI, TCA, KMPを用いた 新規動画配信アプリ 「ABEMA Live」の開発について
tomu28
0
620
オーナーシップを持つ領域を明確にする
konifar
13
3.1k
テストプロセスで大事にしていること #jasstnano
makky_tyuyan
0
160
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
13
1.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
6
990
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.1k
Designing on Purpose - Digital PM Summit 2013
jponch
110
6.5k
A better future with KSS
kneath
231
16k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
356
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
154
14k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
Documentation Writing (for coders)
carmenintech
59
3.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
24
2.3k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
119
39k
Imperfection Machines: The Place of Print at Facebook
scottboms
259
12k
Transcript
DOCKERCON 2018 KEYNOTE SUMMARY ΫϦΤʔγϣϯϥΠϯʢגʣ CSO ླ͍͍ͬ 2018ʗ07ʗ19
None
None
None
None
ࠓճͷΠϕϯτͰ5पΛܴ͑ΔDocker ݩʑDockerɺLinux্ͷίϯςφΛΑΓ ϙʔλϒϧʹ͢ΔͨΊͷখ͞ͳϓϩδΣ ΫτͰͨ͠ɻ
5ܦͬͨࠓɺDocker΄΅શͯͷOSͷ ্Ͱಈ͘·Ͱ͠ɺ·ͨɺΠϯϑϥʹ ͍ͭͯσʔληϯλ͔ΒΫϥυʹࢸ Δ·Ͱ͘Քಇ͢ΔΑ͏ʹ
ࠓ͚ͩͰɺ •100ສਓͷΤϯδχΞ͕ॳΊͯDockerΛͬͨ։ൃΛ։࢝ •100ສݸͷ৽͍͠ΞϓϦέʔγϣϯ͕Docker Hubʹొ͞Εͨ •ͦͷΞοϓϩʔυ͞Εͨίϯςφɺ2िؒ͝ͱʹ10ԯݸɺμϯϩʔυ
ίϛϡχςΟɺDockerຊདྷͷίϛϡχςΟʹՃ͑ɺKubernetes/CNCFͱͷίϥ ϘϨʔγϣϯɺ͞Βʹɺ͜Ε͔ΒݱΕΔ͜ͱ͕ఆ͞ΕΔ৽͍͠OSSϕʔε ͷஂମʹରͯ͠ੵۃతʹڠۀ༧ఆ
ձʹ͍ΔࢀՃऀͷࠓʹೖ͔ͬͯΒ DockerΛ͍࢝Ίͨਓͨͪɻ →ɹDockerͷ͕Γ͕͞Βʹ֦େ͍ͯ͠Δ →ɹDockerͷར༻ऀͷੈަ
Dockerͷࣄۀઓུ3ͭͷՁΛࢢʹಧ͚Δ͜ͱʹଋ • Choice:ʢબͷࣗ༝ʣɿͲͷΑ͏ͳϓϥοτϗʔϜͷ্ͰΞϓϦΛ։ൃʗ ӡ༻Ͱ͖Δڥ • AgilityʢεϐʔυʣɿΞϓϦͷ։ൃʗӡ༻ͷޮΛ֨ஈʹ͋͛Δ • SecurityʢηΩϡϦςΟʣɿෆਖ਼ͳվ͟ΜΞϓϦͷϋοΩϯάࢭΛ։ ൃʗӡ༻ͷCI/CDύΠϓϥΠϯͰ౷Ұ
Choice:ʢબͷࣗ༝ʣɿͲͷΑ͏ͳϓϥοτϗʔϜͷ্ͰΞϓϦΛ։ൃʗӡ༻Ͱ͖Δڥ Docker͕࣋ͭɺΞϓϦέʔγϣϯͷՔಇڥͷϙʔλϏϦςΟ͕࠷େͷϙΠϯτͰ͢ɻ͜Ε ʹΑΔɺ࣍ͷಛ͕͋Γ·͢ɻ • ಛఆͷϕϯμʔϓϥοτϗʔϜͷϩοΫΠϯΛࢭͰ͖Δ • ಛఆͷOSɺϛϑυϧΣΞελοΫͰ͔͠Քಇ͠ͳ͍ڥΛආ͚Δ • ҙͷΠϯϑϥʢΫϥυɺOn-PremiseʣͰੈքதͰಈ͘
Docker Enterprise EditionɺCaaS (Container As a ServiceʣϓϥοτϗʔϜͱ ͯ͠ɺ2ͭͷϙʔλϏϦςΟͷอূ 1ʣΠϯϑϥɿϨΨγʔɺΫϥυʹ͔͔ΘΒͣಉ͡ڥͰΞϓϦΛӡ༻ 2ʣΞϓϦɿͲͷΑ͏ͳΞϓϦͰಉ݅͡ͰՔಇڥΛఏڙ
Docker Enterprise EditionɺΞϓϦέʔγϣϯͷϥΠϑαΠΫϧҰ؏ͯ͠ ౷Ұͨ͠ϞσϧΛఏڙ
AgilityʢεϐʔυʣɿΞϓϦͷ։ൃʗӡ༻ͷޮΛ֨ஈʹ͋͛Δ ΞϓϦͷ։ൃɺग़ՙɺӡ༻ɺอकΛۃྗ؆୯ʹ͢Δ • DockerHubΛ௨ͯࣗ͠༝ʹڞ༗ɺγΣΞՄೳ • ࣗಈԽͷιϑτΣΞͱͷ࿈ܞ͕؆୯ʹͰ͖Δ
SecurityʢηΩϡϦςΟʣɿηΩϡΞͳڥͰશͯͷDockerͷӡ༻͕Ͱ͖ΔΑ͏ʹ͢Δ • ΞϓϦέʔγϣϯίʔυɺσʔλෆਖ਼ͳվ͟ΜΛ͞ΕΔࣄͳ͘ηΩϡΞʹӡ༻ • ։ൃͨ͠ΞϓϦ͕ηΩϡΞͳιϑτΣΞαϓϥΠνΣʔϯʹͤΒΕΔ • ηΩϡϦςΟ͕ΞϓϦͷ։ൃʗӡ༻ϓϩηεͷअຐʹͳΒͳ͍
ݱࡏɺDockerͷސ٬500ࣾΛ͑ɺΤϯλϓϥΠζͰͷಋೖ͕͔ͳΓ େ͖ͳൺॏΛΊ࢝Ί͍ͯΔɻ
None
4ͭͷΩʔͱͳΔൃද͕ߦΘΕ͍ͯΔɻ ӡ༻ཧऀ͚ͷൃද • Federated Application Management in Docker EEʢҟͳΔDockerΫϥελʔؒͰϫʔΫϩʔυΛҠߦʣ •
WindowsαʔόΛKubernetesͰαϙʔτՄೳ ։ൃऀ͚ͷൃද • Docker DesktopͰΞϓϦ։ൃΛςϯϓϨʔτΛͬͯ༰қʹ • Docker ComposeͰDocker Application PackageʹΑΔ؆қΞϓϦ։ൃ
None
ސ٬ͷαʔϕΠʹΑΔͱɺΤϯλϓϥΠζͷސ٬ͷ85%ෳͷΫϥυڥͰΞϓϦέʔγϣϯ ࢿ࢈Λӡ༻͍ͯ͠Δɺͱ͍͏݁Ռ͕ग़͍ͯΔɻ͜Εɺ࣍ͷ2ͭͷత͕͋Δɿ • ಛఆͷΫϥυϕϯμʔʹϩοΫΠϯ͞Εͨ͘ͳ͍ɻ • ϫʔΫϩʔυΛඞཁʹԠͯ͡ϦʔδϣϯΛҠಈͰ͖ΔΑ͏ʹ͍ͨ͠ɻ Dockerίϯςφ͜ΕΛ࣮ݱ͍ͯ͠·͢ɻ ͔͠͠ɺͦͷίϯςφӡ༻ཧະͩɺͦΕͧΕͷΫϥυ্ͰݸผʹߦΘΕ͍ͯͯɺϙʔλϏϦ ςΟ͕ͳ͍ঢ়گͰͨ͠ɻ
ϚϧνΫϥυӡ༻ͷ՝ɿޓੑͷແ͍ΤϦΞ • σϓϩΠखॱ • ࣗಈԽͷπʔϧ • ηΩϡϦςΟϞσϧ • Ϣʔβཧ
ͦͷ՝Λղܾ͢Δͷ͕ɺDocker EEͷFederated Application Managementػೳ ͜ͷػೳ֤ΫϥυͷίϯςφΫϥελʔͷ্Ͱӡ༻͞Εɺҙͷϓϥοτϗʔ ϜͰ࡞ΒΕͨΫϥελʔΛࣗ༝ʹଞͷϓϥοτϗʔϜʹҠಈͰ͖Δख๏ɻ ྫɿOn-PremiseͷDocker EEͰ࡞ͨ͠K8sΫϥελʔΛAmazon EKS্ʹҠಈ
ҟͳΔϓϥοτϗʔϜؒͷΫϥελʔͷҠಈʹ ηΩϡϦςΟͷཁ͕݅ඞ͍ͣͭͯ͘Δɻ Docker Trusted Registry ͜ͷΫϥελʔؒͷΞϓ Ϧσʔλͷࢿ࢈ΛηΩϡΞʹҠಈɺ·ͨूத తʹཧ͢Δػೳͱͯ͜͠ͷΛղܾɻ
͞ΒʹɺFederated Application ManagementػೳɺGUIΛ࣋ͪɺͦͷμο γϡϘʔυΛ௨ͯ͠ίϯςφԽ͞ΕͨΞϓϦɺΫϥελʔͷঢ়گΛαϙʔ τ͢ΔશͯͷϓϥοτϗʔϜΛ௨ͯ͠ৗʹࢹ͢Δ͜ͱ͕ՄೳͰɺҰ؏ ͨ͠ηΩϡϦςΟɺΨόφϯεɺӡ༻ϙϦγʔΛఏڙ͢Δɻ
None
Docker EEΛͬͯɺϖοτετΞͷSpringΞϓϦΛ On-Premise͔ΒΫϥυʹ؆୯ʹҠߦ͢ΔσϞɻ ͜ͷϖοτετΞΞϓϦɺ4ͭͷK8sαʔϏεͷ্ͰՔ ಇ͍ͯ͠Δ͜ͱ͕දࣔɻ
࣮ࡍͷΞϓϦͷτοϓը໘͜Μͳײ͡ɻ On-PremiseͰಈ͍͍ͯΔࣄΛࣔ͢ϩΰ͕͋Δ ɻ
·ͣɺ͜ͷΞϓϦΛOn-Premise͔Β͋Δಛఆͷ ΫϥυʹҠߦ͢Δखॱ
Federated Application ManagementͷμογϡϘʔυΛ։͚ Δͱɺ2ͭͷΫϥελʔ͕ཧ͞Ε͍ͯΔ͜ͱ͕දࣔɻ 1ʣee-onpremɿ On-PremiseͰಈ͘Ϋϥελʔ 2ʣee-cloudɿ Ϋϥυ্Ͱಈ͘Ϋϥελʔ ͲͪΒDocker EE্ͰొࡁΈ
ࠓΞϓϦέʔγϣϯͷλϒΛݟΔͱɺϖοτετΞͷ ΞϓϦ͕ొ͞Ε͍ͯΔ
͜ͷΞϓϦέʔγϣϯ2ͭͷίϯςφͰߏ ɹ1ʣΣϒΞϓϦଆ ɹ2ʣσʔλϕʔεΞϓϦଆ ӈଆɺ͜ͷ2ͭͷίϯςφΛ౷߹͢Δ Docker Compose ͷεΫϦϓτ
PetstoreΞϓϦɺOn-Premiseʢee-onpremʣͷΫϥελʔʹ࣮͞Ε͍ͯΔ
PetstoreΞϓϦɺOn-Premiseʢee-onpremʣͷΫϥελʔʹ࣮͞Ε͍ͯΔ
MigrateϘλϯΛબ͢Δ͜ͱʹΑΓɺҠߦݩͱҠߦઌΛબ͢Δ͚ͩͰ؆୯ʹ࣮ߦ
ϩΰͷมߋʹΑΓɺΞϓϦ͕Ϋϥυ্Ͱಈ͍͍ͯΔ͜ͱ͕֬ೝՄೳ
ࠓҠߦઌ͕K8sϚωʔδυαʔϏεͩͬͨ߹
AzureΫϥελʔΛ·ͣબ AKSͰ4ͭͷϊʔυ͕ཧ͞Ε͍ͯΔ͜ͱΛ֬ೝ
͜ΕΛDocker EE ͷ Federated Application Management ొ ͢ΔίϚϯυͰAKS্ͷϦιʔεΛొ
Google GKSͰಉ͡Α͏ʹొ͢ΔεςοϓΛ࣮ࢪ
Federated Application Managementͷμογϡ ϘʔυʹΔͱɺEKSʢUSʣɺAKSʢΦϥϯ μʣɺGKEʢ౦ژʣͷ3ͭͷΫϥυ্ͰͷΫ ϥελʔ͕ొ͞Ε͍ͯΔࣄΛ֬ೝɻ ΞΫηεཧʢRBACʣɺΫϥυؒͷΞϓϦ ʗσʔλͷޓੑɺΫϥυؒͷηΩϡϦ ςΟɺશͯDocker EEͰอূ
ࠓɺෳͷK8sϚωʔδυαʔϏεؒͰϫʔΫϩʔυΛҠߦ
ಉ͡ΞϓϦΛબ
ͦͷΞϓϦͷσϓϩΠઌΛબ
؆୯ͳૢ࡞ͰɺϖοτετΞΞϓϦ ͷΫϥελ͕ɺෳͷK8sαʔϏεϓ ϥοτϗʔϜ্Ͱ࣮
؆୯ͳૢ࡞ͰɺϖοτετΞΞϓϦ ͷΫϥελ͕ɺෳͷK8sαʔϏεϓ ϥοτϗʔϜ্Ͱ࣮
࣍ͷ৽ػೳɺDocker EE্ͰWindowsΞϓϦΛK8sͰ αϙʔτͨ͜͠ͱ
Docker EEͰɺ֤छLinuxͷαϙʔτΛߦͬͯΔ͕ɺ ͜ΕʹMicrosoft Windows͕ಉ༷ͷαϙʔτΛड͚Δ
DockerͱϚΠΫϩιϑτͱͷؔݹ͘ɺWindowsίϯςφͷαϙʔτ ɺஈ֊తʹ࣮ࢪɻ ྆ࣾͷ։ൃνʔϜڠۀؔʹ͋ΓɺࠓճͷൃදͰɺWindows ίϯς φͷΦʔέετϨʔλͱͯ͠ɺKubernetes͕બͰ͖ΔΑ͏ʹͳͬͨࣄɻ
3ͭͷબͷࣗ༝ ɿ • ϓϥοτϗʔϜ OS • ΦʔέετϨʔλ .NetʗWindowsαʔόϕʔεͷΞϓϦͱLinuxΛ྆ํ͍ͬΜʹίϯςφԽɺ౷Ұͨ͠GUIͰཧ ΦʔέετϨʔγϣϯSwarmͱKubernetesͷ྆ํͰαϙʔτʢ྆ऀؒͷҠߦՄೳ
GA༧ఆɿݱࡏЌ͕͜ͷϦϯΫͰμϯϩʔυՄೳ
ࠓ։ൃऀ͚ͷ৽ػೳɿDocker Desktop
ࠓ։ൃऀ͚ͷ৽ػೳɿDocker Desktop ͷ Application Designer
Docker for DesktopͷApplication Designer͕ఏڙ͢Δجຊػೳ • LinuxίϯςφΛ࡞͢ΔͨΊͷܰྔԽͨ͠LinuxΧʔωϧʢVMʣ ϑΝΠϧγεςϜͷ࠷దԽͰΞϓϦΛڞ༗͘͢͠ • ಉ༷ʹωοτϫʔΫ࠷దԽ
Docker for DesktopͷKubernetesͷαϙʔτʹΑΓɺσεΫτοϓϚγ ϯͷ্ͰKubernetesͷΫϥελʔΛߏஙՄೳʹ KubernetesCNCF͔ΒೝఆΛड͚͍ͯΔͷ
Docker for Desktop ͷૢ࡞શͯCLIͰ࣮ࢪͰ͖Δ͕ɺΑΓ ߴͳGUIͰͦ͏Ͱ͖ΔΑ͏͍ͨ͠ɺͱ͍͏ҙݟΛଟ͘ฉ ͘Α͏ʹͳͬͨ
ͦ͜ͰɺDockerConʹ͓͍ͯɺΟβʔυϕʔεͷΞϓϦ։ൃπʔϧΛ ͍͍͢GUIͰఏڙͰ͖ΔApplication Designerͱ͍͏৽ػೳΛൃද
طଘͷςϯϓϨʔτΛͦͷ··બ͢Δ͔ɺςϯϓϨʔτΛΧελϚΠζ͢Δ ͜ͱʹΑͬͯಠࣗͷΞϓϦΛ࡞Δ͜ͱ͕Մೳɻ • DockerfileͱComposeϑΝΠϧΛDocker Desktop্Ͱࣗಈੜ • ओཁͳIDEπʔϧͱͷ࿈ܞՄೳ
4ͭͷൃදɺΞϓϦͷఆٛΛߦ͏Docker ComposeͷΤϯϋϯε
Composeͷಛ • ؆୯ͳςΩετͰදه • ϚΠΫϩαʔϏεɺෳͷίϯςφʹΑͬͯߏ͞ΕΔΞϓ ϦΛ౷߹ • ίϚϯυҰͭͰෳίϯϙʔωϯτߏͷΞϓϦͷىಈ͕Մೳ
10݄ʹɺComposeͷKubernetesͷҠ২Λൃද͍ͯ͠Δɻ ਤͷίϚϯυɺWordsͱ͍͏ComposeϑΝΠϧΛKubernetes ͰσϓϩΠ͍ͯ͠Δ
DockerCon 2018ʹ͓͍ͯɺApplication Package ͷ৽ػೳΛൃද 2ͭͷػೳΛఏڙɿ • ΞϓϦίʔυΛΞϓϦͷڥใ͔Β • ComposeίʔυΛHelm ChartʹมʢKubernetesϢʔβ͔Βͷڧ͍χʔζʣ
Case Study: McKesson → ถࠃͷେखҩྍܥITϕϯμʔ Andrew Zitney (SVP Strategy &
Enterprise Platforms) Rashmi Kumar (SVP Supply Chain Tech)
None
• ۀ185ͷฮͷҩྍۀऀ • Fortune 500Ͱୈ6Ґͷاۀ • શถͰࢧڅ͞Ε͍ͯΔ1ʗ3ͷҩༀΛऔΓѻ͏ • $37ԯυϧͷΩϟογϡϑϩʔ
• ٕज़ͷਐา͕ձࣾͷΠϊϕʔγϣϯΛڧཁ͍ͯ͠Δɻ ͔͠͠ɺҩྍۀքಛ ʹITΠϊϕʔγϣϯ͕Ε͍ͯΔۀք • McKessonɺපӃɺҩऀɺҩༀۀքɺༀہɺอݥձࣾͷؒʹཱͪɺશମΛ ITΛۦͯ݁͠ͼ͚ͭΔཱʹ͍ΔاۀͰ͋Δɺͱೝࣝɻ → ͜Ε͕McKessonͷτοϓ͔Βࢦࣔ͞Ε͍ͯΔ໋Ͱ͋ΓɺITࢿͷݪಈ
ྗͱͳ͍ͬͯΔɻ
ݱࡏɺ5000ਓͷIT෦ͷதͰɺ2000ਓͷ։ൃऀΛอ༗
͜ͷ৫Ͱඪ४తͳ։ൃख๏Λ࠾༻ • ͷൃ۷ • ຖճɺ։ൃύΠϓϥΠϯͷݸผઃܭ • ҟͳΔϓϥοτϗʔϜͰҟͳΔνʔϜ͕։ൃʗ౷߹ʗग़ՙ
18ϲ݄લʹίϯςφͷಋೖΛܾҙ͠ɺ͜ͷϓϩηεͷ ౷ҰΛࢦ͢
ฏۉͯ͠15ʙ30લʹ։ൃ͞Ε͍ͯΔΞϓϦΛϞμφΠζ 15બखͷɺeίϚʔεΞϓϦ͔Βணख on-PremiseͷΠϯϑϥϓϩϏδϣχϯάͪ࣌ؒΛ4ʙ5िؒΛ45Maxʹॖ
ݱࡏɺMcKesson LabsΛ৫Խɺ౷Ұͨ͠։ൃʗӡ༻৫Λߏங • ใͷڞ༗Λଅਐʢπʔϧʗख๏ͷڞ༗ɺϊϋͷڞ༗ɺଞʣ • Docker͕͜ͷϊϋʗπʔϧʗιϦϡʔγϣϯͷڞ༗ͷखஈͱͳͬͨ
Docker͕ΞϓϦ։ൃʗӡ༻ͷத֩Λ୲͏ • ϨΨγʔΞϓϦίϯςφԽͯ͠ࢿ࢈ΛकΔ • ΫϥυωʔςΟϒΞϓϦίϯςφϑΝʔετͷϙϦγʔΛపఈ • ྆ํΛ౷Ұͨ͠DockerΠϯϑϥͰӡ༻ཧ
2000ਓͷ։ൃମ੍ɺ5000ਓͷITઐՈ৫ʹมભ ৫શମ͕ҰମͱͳͬͯاۀͷΠϊϕʔγϣϯΛاըɺ ։ൃɺಋೖɺΤϯϋϯεΛߦ͏