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
許しとアジャイル
jnuank
1
140
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
11
79k
定期的な価値提供だけじゃない、スクラムが導くチームの共創化 / 20251004 Naoki Takahashi
shift_evolve
PRO
4
360
[Keynote] What do you need to know about DevEx in 2025
salaboy
0
160
How to achieve interoperable digital identity across Asian countries
fujie
0
140
カンファレンスに託児サポートがあるということ / Having Childcare Support at Conferences
nobu09
1
530
そのWAFのブロック、どう活かす? サービスを守るための実践的多層防御と思考法 / WAF blocks defense decision
kaminashi
0
160
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
6
960
E2Eテスト設計_自動化のリアル___Playwrightでの実践とMCPの試み__AIによるテスト観点作成_.pdf
findy_eventslides
2
600
20251007: What happens when multi-agent systems become larger? (CyberAgent, Inc)
ornew
1
200
BI ツールはもういらない?Amazon RedShift & MCP Server で試みる新しいデータ分析アプローチ
cdataj
0
100
GoでもGUIアプリを作りたい!
kworkdev
PRO
0
130
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Statistics for Hackers
jakevdp
799
220k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Become a Pro
speakerdeck
PRO
29
5.5k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Side Projects
sachag
455
43k
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ઐՈ৫ʹมભ ৫શମ͕ҰମͱͳͬͯاۀͷΠϊϕʔγϣϯΛاըɺ ։ൃɺಋೖɺΤϯϋϯεΛߦ͏