DockerCon 2018報告レポート

DockerCon 2018報告レポート

DockerCon 2018の出席レポート:
Docker Meetup #24 - 7/19にて報告
https://dockerjp.connpass.com/event/93140

97cfb155521c5c2dda6603944aa422f5?s=128

IppeiSuzuki

July 19, 2018
Tweet

Transcript

  1. DOCKERCON 2018 
 KEYNOTE SUMMARY ΫϦΤʔγϣϯϥΠϯʢגʣ CSO ླ໦͍ͬ΃͍ 2018ʗ07ʗ19

  2. None
  3. None
  4. None
  5. None
  6. ࠓճͷΠϕϯτͰ5प೥Λܴ͑ΔDocker ݩʑDocker͸ɺLinux্ͷίϯςφΛΑΓ ϙʔλϒϧʹ͢ΔͨΊͷখ͞ͳϓϩδΣ ΫτͰͨ͠ɻ

  7. 5೥ܦͬͨࠓɺDocker͸΄΅શͯͷOSͷ ্Ͱಈ͘·Ͱ੒௕͠ɺ·ͨɺΠϯϑϥʹ ͍ͭͯ΋σʔληϯλ͔ΒΫϥ΢υʹࢸ Δ·Ͱ޿͘Քಇ͢ΔΑ͏ʹ

  8. ࠓ೥͚ͩͰɺ •100ສਓͷΤϯδχΞ͕ॳΊͯDockerΛ࢖ͬͨ։ൃΛ։࢝ •100ສݸͷ৽͍͠ΞϓϦέʔγϣϯ͕Docker Hubʹొ࿥͞Εͨ •ͦͷΞοϓϩʔυ͞Εͨίϯςφ͸ɺ2िؒ͝ͱʹ10ԯݸɺμ΢ϯϩʔυ

  9. ίϛϡχςΟ΋ɺDockerຊདྷͷίϛϡχςΟʹՃ͑ɺKubernetes/CNCFͱͷίϥ ϘϨʔγϣϯɺ͞Βʹɺ͜Ε͔Β΋ݱΕΔ͜ͱ͕૝ఆ͞ΕΔ৽͍͠OSSϕʔε ͷஂମʹରͯ͠΋ੵۃతʹڠۀ༧ఆ

  10. ձ৔ʹ͍ΔࢀՃऀͷ൒෼͸ࠓ೥ʹೖ͔ͬͯΒ DockerΛ࢖͍࢝Ίͨਓͨͪɻ →ɹDockerͷ޿͕Γ͕͞Βʹ֦େ͍ͯ͠Δ →ɹDockerͷར༻ऀͷੈ୅ަ୅

  11. Dockerͷࣄۀઓུ͸3ͭͷՁ஋Λࢢ৔ʹಧ͚Δ͜ͱʹ໿ଋ • Choice:ʢબ୒ͷࣗ༝ʣɿͲͷΑ͏ͳϓϥοτϗʔϜͷ্Ͱ΋ΞϓϦΛ։ൃʗ ӡ༻Ͱ͖Δ؀ڥ • AgilityʢεϐʔυʣɿΞϓϦͷ։ൃʗӡ༻ͷޮ཰Λ֨ஈʹ͋͛Δ • SecurityʢηΩϡϦςΟʣɿෆਖ਼ͳվ͟Μ΍ΞϓϦ΁ͷϋοΩϯά๷ࢭ౳Λ։ ൃʗӡ༻ͷCI/CDύΠϓϥΠϯͰ౷Ұ

  12. Choice:ʢબ୒ͷࣗ༝ʣɿͲͷΑ͏ͳϓϥοτϗʔϜͷ্Ͱ΋ΞϓϦΛ։ൃʗӡ༻Ͱ͖Δ؀ڥ Docker͕࣋ͭɺΞϓϦέʔγϣϯͷՔಇ؀ڥͷϙʔλϏϦςΟ͕࠷େͷϙΠϯτͰ͢ɻ͜Ε ʹΑΔɺ࣍ͷಛ௕͕͋Γ·͢ɻ • ಛఆͷϕϯμʔϓϥοτϗʔϜ΁ͷϩοΫΠϯΛ๷ࢭͰ͖Δ • ಛఆͷOSɺϛϑυϧ΢ΣΞελοΫͰ͔͠Քಇ͠ͳ͍؀ڥΛආ͚Δ • ೚ҙͷΠϯϑϥʢΫϥ΢υɺOn-PremiseʣͰੈքதͰಈ͘

  13. Docker Enterprise Edition͸ɺCaaS (Container As a ServiceʣϓϥοτϗʔϜͱ ͯ͠ɺ2ͭͷϙʔλϏϦςΟͷอূ 1ʣΠϯϑϥɿϨΨγʔɺΫϥ΢υʹ͔͔ΘΒͣಉ͡؀ڥͰΞϓϦΛӡ༻ 2ʣΞϓϦɿͲͷΑ͏ͳΞϓϦͰ΋ಉ͡৚݅ͰՔಇ؀ڥΛఏڙ

  14. Docker Enterprise Edition͸ɺΞϓϦέʔγϣϯͷϥΠϑαΠΫϧ΋Ұ؏ͯ͠ ౷Ұͨ͠ϞσϧΛఏڙ

  15. AgilityʢεϐʔυʣɿΞϓϦͷ։ൃʗӡ༻ͷޮ཰Λ֨ஈʹ͋͛Δ ΞϓϦͷ։ൃɺग़ՙɺӡ༻ɺอकΛۃྗ؆୯ʹ͢Δ • DockerHubΛ௨ͯࣗ͠༝ʹڞ༗ɺγΣΞՄೳ • ࣗಈԽͷιϑτ΢ΣΞͱͷ࿈ܞ͕؆୯ʹͰ͖Δ

  16. SecurityʢηΩϡϦςΟʣɿηΩϡΞͳ؀ڥͰશͯͷDockerͷӡ༻͕Ͱ͖ΔΑ͏ʹ͢Δ • ΞϓϦέʔγϣϯίʔυ΍ɺσʔλ͸ෆਖ਼ͳվ͟ΜΛ͞ΕΔࣄͳ͘ηΩϡΞʹӡ༻ • ։ൃͨ͠ΞϓϦ͕ηΩϡΞͳιϑτ΢ΣΞαϓϥΠνΣʔϯʹ৐ͤΒΕΔ • ηΩϡϦςΟ͕ΞϓϦͷ։ൃʗӡ༻ϓϩηεͷअຐʹͳΒͳ͍

  17. ݱࡏɺDockerͷސ٬͸500ࣾΛ௒͑ɺΤϯλϓϥΠζͰͷಋೖ͕͔ͳΓ େ͖ͳൺॏΛ઎Ί࢝Ί͍ͯΔɻ

  18. None
  19. 4ͭͷΩʔͱͳΔൃද͕ߦΘΕ͍ͯΔɻ ӡ༻؅ཧऀ޲͚ͷൃද • Federated Application Management in Docker EEʢҟͳΔDockerΫϥελʔؒͰϫʔΫϩʔυΛҠߦʣ •

    WindowsαʔόΛKubernetesͰαϙʔτՄೳ ։ൃऀ޲͚ͷൃද • Docker DesktopͰΞϓϦ։ൃΛςϯϓϨʔτΛ࢖ͬͯ༰қʹ • Docker ComposeͰDocker Application PackageʹΑΔ؆қΞϓϦ։ൃ
  20. None
  21. ސ٬ͷαʔϕΠʹΑΔͱɺΤϯλϓϥΠζͷސ٬ͷ85%͸ෳ਺ͷΫϥ΢υ؀ڥͰΞϓϦέʔγϣϯ ࢿ࢈Λӡ༻͍ͯ͠Δɺͱ͍͏݁Ռ͕ग़͍ͯΔɻ͜Ε͸ɺ࣍ͷ2ͭͷ໨త͕͋Δɿ • ಛఆͷΫϥ΢υϕϯμʔʹϩοΫΠϯ͞Εͨ͘ͳ͍ɻ • ϫʔΫϩʔυΛඞཁʹԠͯ͡ϦʔδϣϯΛҠಈͰ͖ΔΑ͏ʹ͍ͨ͠ɻ Dockerίϯςφ͸͜ΕΛ࣮ݱ͍ͯ͠·͢ɻ ͔͠͠ɺͦͷίϯςφӡ༻؅ཧ͸ະͩɺͦΕͧΕͷΫϥ΢υ্ͰݸผʹߦΘΕ͍ͯͯɺϙʔλϏϦ ςΟ͕ͳ͍ঢ়گͰͨ͠ɻ

  22. ϚϧνΫϥ΢υӡ༻ͷ՝୊ɿޓ׵ੑͷແ͍ΤϦΞ • σϓϩΠखॱ • ࣗಈԽ౳ͷπʔϧ • ηΩϡϦςΟϞσϧ • Ϣʔβ؅ཧ

  23. ͦͷ՝୊Λղܾ͢Δͷ͕ɺDocker EEͷFederated Application Managementػೳ ͜ͷػೳ͸֤Ϋϥ΢υͷίϯςφΫϥελʔͷ্Ͱӡ༻͞Εɺ೚ҙͷϓϥοτϗʔ ϜͰ࡞ΒΕͨΫϥελʔΛࣗ༝ʹଞͷϓϥοτϗʔϜʹҠಈͰ͖Δख๏ɻ ྫɿOn-PremiseͷDocker EEͰ࡞੒ͨ͠K8sΫϥελʔΛAmazon EKS্ʹҠಈ

  24. ҟͳΔϓϥοτϗʔϜؒͷΫϥελʔͷҠಈʹ͸ ηΩϡϦςΟͷཁ͕݅ඞ͍ͣͭͯ͘Δɻ Docker Trusted Registry ͸͜ͷΫϥελʔؒͷΞϓ Ϧ΍σʔλͷࢿ࢈ΛηΩϡΞʹҠಈɺ·ͨ͸ूத తʹ؅ཧ͢Δػೳͱͯ͜͠ͷ໰୊Λղܾɻ

  25. ͞ΒʹɺFederated Application Managementػೳ͸ɺGUIΛ࣋ͪɺͦͷμο γϡϘʔυΛ௨ͯ͠ίϯςφԽ͞ΕͨΞϓϦɺΫϥελʔͷঢ়گΛαϙʔ τ͢ΔશͯͷϓϥοτϗʔϜΛ௨ͯ͠ৗʹ؂ࢹ͢Δ͜ͱ͕ՄೳͰɺҰ؏ ͨ͠ηΩϡϦςΟɺΨόφϯεɺӡ༻ϙϦγʔΛఏڙ͢Δɻ

  26. None
  27. Docker EEΛ࢖ͬͯɺϖοτετΞͷSpringΞϓϦΛ On-Premise͔ΒΫϥ΢υʹ؆୯ʹҠߦ͢ΔσϞɻ ͜ͷϖοτετΞΞϓϦɺ4ͭͷK8sαʔϏεͷ্ͰՔ ಇ͍ͯ͠Δ͜ͱ͕දࣔɻ

  28. ࣮ࡍͷΞϓϦͷτοϓը໘͸͜Μͳײ͡ɻ On-PremiseͰಈ͍͍ͯΔࣄΛࣔ͢ϩΰ͕͋Δ ɻ

  29. ·ͣ͸ɺ͜ͷΞϓϦΛOn-Premise͔Β͋Δಛఆͷ Ϋϥ΢υʹҠߦ͢Δखॱ

  30. Federated Application ManagementͷμογϡϘʔυΛ։͚ Δͱɺ2ͭͷΫϥελʔ͕؅ཧ͞Ε͍ͯΔ͜ͱ͕දࣔɻ 1ʣee-onpremɿ On-PremiseͰಈ͘Ϋϥελʔ 2ʣee-cloudɿ Ϋϥ΢υ্Ͱಈ͘Ϋϥελʔ ͲͪΒ΋Docker EE্Ͱొ࿥ࡁΈ

  31. ࠓ౓͸ΞϓϦέʔγϣϯͷλϒΛݟΔͱɺϖοτετΞͷ ΞϓϦ͕ొ࿥͞Ε͍ͯΔ

  32. ͜ͷΞϓϦέʔγϣϯ͸2ͭͷίϯςφͰߏ੒ ɹ1ʣ΢ΣϒΞϓϦଆ ɹ2ʣσʔλϕʔεΞϓϦଆ ӈଆ͸ɺ͜ͷ2ͭͷίϯςφΛ౷߹͢Δ Docker Compose ͷεΫϦϓτ

  33. PetstoreΞϓϦ͸ɺOn-Premiseʢee-onpremʣͷΫϥελʔʹ࣮૷͞Ε͍ͯΔ

  34. PetstoreΞϓϦ͸ɺOn-Premiseʢee-onpremʣͷΫϥελʔʹ࣮૷͞Ε͍ͯΔ

  35. MigrateϘλϯΛબ୒͢Δ͜ͱʹΑΓɺҠߦݩͱҠߦઌΛબ୒͢Δ͚ͩͰ؆୯ʹ࣮ߦ

  36. ϩΰͷมߋʹΑΓɺΞϓϦ͕Ϋϥ΢υ্Ͱಈ͍͍ͯΔ͜ͱ͕֬ೝՄೳ

  37. ࠓ౓͸Ҡߦઌ͕K8sϚωʔδυαʔϏεͩͬͨ৔߹

  38. AzureΫϥελʔΛ·ͣબ୒ AKSͰ4ͭͷϊʔυ͕؅ཧ͞Ε͍ͯΔ͜ͱΛ֬ೝ

  39. ͜ΕΛDocker EE ͷ Federated Application Management ొ࿥ ͢ΔίϚϯυͰAKS্ͷϦιʔεΛొ࿥

  40. Google GKSͰ΋ಉ͡Α͏ʹొ࿥͢ΔεςοϓΛ࣮ࢪ

  41. Federated Application Managementͷμογϡ Ϙʔυʹ໭ΔͱɺEKSʢUSʣɺAKSʢΦϥϯ μʣɺGKEʢ౦ژʣͷ3ͭͷΫϥ΢υ্ͰͷΫ ϥελʔ͕ొ࿥͞Ε͍ͯΔࣄΛ֬ೝɻ ΞΫηε؅ཧʢRBACʣɺΫϥ΢υؒͷΞϓϦ ʗσʔλͷޓ׵ੑɺΫϥ΢υؒͷηΩϡϦ ςΟɺ౳͸શͯDocker EEͰอূ

  42. ࠓ౓͸ɺෳ਺ͷK8sϚωʔδυαʔϏεؒͰϫʔΫϩʔυΛҠߦ

  43. ಉ͡ΞϓϦΛબ୒

  44. ͦͷΞϓϦͷσϓϩΠઌΛબ୒

  45. ؆୯ͳૢ࡞ͰɺϖοτετΞΞϓϦ ͷΫϥελ͕ɺෳ਺ͷK8sαʔϏεϓ ϥοτϗʔϜ্Ͱ࣮૷

  46. ؆୯ͳૢ࡞ͰɺϖοτετΞΞϓϦ ͷΫϥελ͕ɺෳ਺ͷK8sαʔϏεϓ ϥοτϗʔϜ্Ͱ࣮૷

  47. ࣍ͷ৽ػೳ͸ɺDocker EE্ͰWindowsΞϓϦΛK8sͰ αϙʔτͨ͜͠ͱ

  48. Docker EEͰ͸ɺ֤छLinuxͷαϙʔτΛߦͬͯΔ͕ɺ ͜ΕʹMicrosoft Windows͕ಉ༷ͷαϙʔτΛड͚Δ

  49. DockerͱϚΠΫϩιϑτͱͷؔ܎͸ݹ͘ɺWindowsίϯςφͷαϙʔτ ͸ɺஈ֊తʹ࣮ࢪɻ ྆ࣾͷ։ൃνʔϜ͸ڠۀؔ܎ʹ͋ΓɺࠓճͷൃදͰ͸ɺWindows ίϯς φͷΦʔέετϨʔλͱͯ͠ɺKubernetes͕બ୒Ͱ͖ΔΑ͏ʹͳͬͨࣄɻ

  50. 3ͭͷબ୒ͷࣗ༝ ɿ • ϓϥοτϗʔϜ 
 OS • ΦʔέετϨʔλ .NetʗWindowsαʔόϕʔεͷΞϓϦͱLinuxΛ྆ํ͍ͬ΃ΜʹίϯςφԽɺ౷Ұͨ͠GUIͰ؅ཧ ΦʔέετϨʔγϣϯ͸SwarmͱKubernetesͷ྆ํͰαϙʔτʢ྆ऀؒͷҠߦ΋Մೳ

  51. GA͸೥಺༧ఆɿݱࡏ͸Ќ͕͜ͷϦϯΫͰμ΢ϯϩʔυՄೳ

  52. ࠓ౓͸։ൃऀ޲͚ͷ৽ػೳɿDocker Desktop

  53. ࠓ౓͸։ൃऀ޲͚ͷ৽ػೳɿDocker Desktop ͷ Application Designer

  54. Docker for DesktopͷApplication Designer͕ఏڙ͢Δجຊػೳ • LinuxίϯςφΛ࡞੒͢ΔͨΊͷܰྔԽͨ͠LinuxΧʔωϧʢVMʣ 
 ϑΝΠϧγεςϜͷ࠷దԽͰΞϓϦΛڞ༗͠΍͘͢ • ಉ༷ʹωοτϫʔΫ΋࠷దԽ

  55. Docker for DesktopͷKubernetesͷαϙʔτʹΑΓɺσεΫτοϓϚγ ϯͷ্ͰKubernetesͷΫϥελʔΛߏஙՄೳʹ Kubernetes͸CNCF͔ΒೝఆΛड͚͍ͯΔ΋ͷ

  56. Docker for Desktop ͷૢ࡞͸શͯCLIͰ࣮ࢪͰ͖Δ͕ɺΑΓ ߴ౓ͳGUIͰͦ͏Ͱ͖ΔΑ͏͍ͨ͠ɺͱ͍͏ҙݟΛଟ͘ฉ ͘Α͏ʹͳͬͨ

  57. ͦ͜ͰɺDockerConʹ͓͍ͯ͸ɺ΢ΟβʔυϕʔεͷΞϓϦ։ൃπʔϧΛ ࢖͍΍͍͢GUIͰఏڙͰ͖ΔApplication Designerͱ͍͏৽ػೳΛൃද

  58. طଘͷςϯϓϨʔτΛͦͷ··બ୒͢Δ͔ɺςϯϓϨʔτΛΧελϚΠζ͢Δ ͜ͱʹΑͬͯಠࣗͷΞϓϦΛ࡞Δ͜ͱ͕Մೳɻ • DockerfileͱComposeϑΝΠϧΛDocker Desktop্Ͱࣗಈੜ੒ • ओཁͳIDEπʔϧͱͷ࿈ܞ΋Մೳ

  59. 4ͭ໨ͷൃද͸ɺΞϓϦͷఆٛΛߦ͏Docker ComposeͷΤϯϋϯε

  60. Composeͷಛ௃ • ؆୯ͳςΩετͰදه • ϚΠΫϩαʔϏε౳ɺෳ਺ͷίϯςφʹΑͬͯߏ੒͞ΕΔΞϓ ϦΛ౷߹ • ίϚϯυҰͭͰෳ਺ίϯϙʔωϯτߏ੒ͷΞϓϦͷىಈ͕Մೳ

  61. 10݄ʹ͸ɺComposeͷKubernetes΁ͷҠ২Λൃද͍ͯ͠Δɻ ਤͷίϚϯυ͸ɺWordsͱ͍͏ComposeϑΝΠϧΛKubernetes ͰσϓϩΠ͍ͯ͠Δ

  62. DockerCon 2018ʹ͓͍ͯ͸ɺApplication Package ͷ৽ػೳΛൃද 2ͭͷػೳΛఏڙɿ • ΞϓϦίʔυΛΞϓϦͷ؀ڥ৘ใ͔Β෼཭ • ComposeίʔυΛHelm Chartʹม׵ʢKubernetesϢʔβ͔Βͷڧ͍χʔζʣ

  63. Case Study: McKesson → ถࠃͷେखҩྍܥITϕϯμʔ Andrew Zitney (SVP Strategy &

    Enterprise Platforms) Rashmi Kumar (SVP Supply Chain Tech)
  64. None
  65. • ૑ۀ185೥໨ͷ࿝ฮͷҩྍۀऀ • Fortune 500Ͱୈ6Ґͷاۀ • શถͰࢧڅ͞Ε͍ͯΔ1ʗ3ͷҩༀ඼ΛऔΓѻ͏ • $37ԯυϧͷΩϟογϡϑϩʔ

  66. • ٕज़ͷਐา͕ձࣾͷΠϊϕʔγϣϯΛڧཁ͍ͯ͠Δɻ ͔͠͠ɺҩྍۀք͸ಛ ʹITΠϊϕʔγϣϯ͕஗Ε͍ͯΔۀք • McKesson͸ɺපӃɺҩऀɺҩༀ඼ۀքɺༀہɺอݥձࣾͷؒʹཱͪɺશମΛ ITΛۦ࢖ͯ݁͠ͼ͚ͭΔཱ৔ʹ͍ΔاۀͰ͋Δɺͱೝࣝɻ 
 → ͜Ε͕McKessonͷτοϓ͔Βࢦࣔ͞Ε͍ͯΔ໋୊Ͱ͋ΓɺIT౤ࢿ΁ͷݪಈ

    ྗͱͳ͍ͬͯΔɻ
  67. ݱࡏɺ5000ਓͷIT෦໳ͷதͰɺ2000ਓͷ։ൃऀΛอ༗

  68. ͜ͷ૊৫Ͱඪ४తͳ։ൃख๏Λ࠾༻ • ໰୊ͷൃ۷ • ຖճɺ։ൃύΠϓϥΠϯͷݸผઃܭ • ҟͳΔϓϥοτϗʔϜͰҟͳΔνʔϜ͕։ൃʗ౷߹ʗग़ՙ

  69. 18ϲ݄લʹίϯςφͷಋೖΛܾҙ͠ɺ͜ͷϓϩηεͷ ౷ҰΛ໨ࢦ͢

  70. ฏۉͯ͠15ʙ30೥લʹ։ൃ͞Ε͍ͯΔΞϓϦΛϞμφΠζ 15೥બखͷɺeίϚʔεΞϓϦ͔Βணख on-PremiseͷΠϯϑϥϓϩϏδϣχϯά଴ͪ࣌ؒΛ4ʙ5िؒΛ45෼Maxʹ୹ॖ

  71. ݱࡏ͸ɺMcKesson LabsΛ૊৫Խɺ౷Ұͨ͠։ൃʗӡ༻૊৫Λߏங • ৘ใͷڞ༗Λଅਐʢπʔϧʗख๏ͷڞ༗ɺϊ΢ϋ΢ͷڞ༗ɺଞʣ • Docker͕͜ͷϊ΢ϋ΢ʗπʔϧʗιϦϡʔγϣϯͷڞ༗ͷखஈͱͳͬͨ

  72. Docker͕ΞϓϦ։ൃʗӡ༻ͷத֩Λ୲͏ • ϨΨγʔΞϓϦ͸ίϯςφԽͯ͠ࢿ࢈ΛकΔ • Ϋϥ΢υωʔςΟϒΞϓϦ͸ίϯςφϑΝʔετͷϙϦγʔΛపఈ • ྆ํΛ౷Ұͨ͠DockerΠϯϑϥͰӡ༻؅ཧ

  73. 2000ਓͷ։ൃମ੍͸ɺ5000ਓͷITઐ໳Ո૊৫ʹมભ ૊৫શମ͕ҰମͱͳͬͯاۀͷΠϊϕʔγϣϯΛاըɺ ։ൃɺಋೖɺΤϯϋϯεΛߦ͏