Docker今昔 / Docker Kubernetes through the Ages

Ad22fcf5773b906c08330f4d57242212?s=47 Kohei Ota
August 07, 2019

Docker今昔 / Docker Kubernetes through the Ages

Ad22fcf5773b906c08330f4d57242212?s=128

Kohei Ota

August 07, 2019
Tweet

Transcript

  1. %PDLFS,VCFSOFUFT 5ISPVHIUIF"HFT $MPVE/BUJWF.FFUVQ5PLZP 1SFTFOUFECZ!@JOEVDUPS@

  2. %PDLFS,VCFSOFUFT ࠓੲ $MPVE/BUJWF.FFUVQ5PLZP 1SFTFOUFECZ!@JOEVDUPS@

  3. %PDLFS,VCFSOFUFT ࠓੲ $MPVE/BUJWF.FFUVQ5PLZP 1SFTFOUFECZ!@JOEVDUPS@

  4. ࣗݾ঺հ w 5XJUUFS!@JOEVDUPS@ w (JU)VC!JOEVDUPS w .-0QT&OHJOFFS!;0;05FDI w 'BWPSJUFIPVTF)V⒐FQV⒎

  5. %PDLFS,VCFSOFUFT 5ISPVHIUIF"HFT $MPVE/BUJWF.FFUVQ5PLZP 1SFTFOUFECZ!@JOEVDUPS@

  6. ೥݄ %PDLFSϦϦʔε

  7. %PDLFSͷಛ௕ ϦϦʔε࣌ w -9$ϕʔεͷίϯςφԾ૝Խ -JOVYΧʔωϧͷػೳϕʔε  w OBNFTQBDFʹΑΔϦιʔεͷִ཭ FHϢʔβʔɺ/8ɺ1*%ɺ'4౳ 

    w ϗετ͔Β෼཭͞Εۭͨؒʹஔ͔ΕΔ w DHSPVQTʹΑΔϦιʔε੍ݶ $16 ϝϞϦͳͲΛϓϩηε͝ͱʹ੍ݶ  w $-*ͳͲΛܦ༝ͯ͠-9$ͷ"1*ʹ໋ྩΛૹΔ΍ʔͭ w "6'4ͱ͍͏-BZFSFE'JMFTZTUFNΛ༻͍ͨ$P8 w ϩΪϯά΍มߋ؅ཧͷػೳͳͲΛಠࣗʹ࣮૷
  8. None
  9. ͔͜͜Βϲ݄Ͱ044Խ

  10. ϦϦʔε࣌ͷΦλΫͨͪͷ൓Ԡ )BDLFS/FXTΑΓ

  11. શવৄ͘͠ͳ͍Μ͚ͩͲɺී௨ͷԾ૝Խͱൺ΂ͯηΩϡϦςΟతʹ෼཭Ϩϕϧ͸Ͳͷ͘Β͍ڧ͍΋Μͳͷʁ ίϯςφϕʔεͷԾ૝Խ͸ɺ௨ৗͷԾ૝ԽΑΓ΋௿ෛՙͰີ౓ͷߴ͍ಛ௕Λ΋ͪͳ͕Β ૉ੖Β͍͠Ϩϕϧͷ෼཭΋ظ଴Ͱ͖Δɻ4PMBSJT[POF͸ඇৗʹߴ͘ධՁ͞Εɺ Ϛϧνςφϯτͱͯ͠࢖ΘΕ͍ͯΔɻ ϋΠύʔόΠβܕͱίϯςφܕͷཧ࿦্ͷҧ͍͸ɺίϯςφܕ͕Χʔωϧͷ্ʹ ͋Δ͜ͱͰɺԾ૝Խʹ͓͚Δ෼཭ͷ࣮ݱʹΧʔωϧͷٕज़Λ༻͍͍ͯΔɻ ͦͷͨΊɺΧʔωϧʹΤΫεϓϩΠτ͕Մೳͳ੬ऑੑ͕ݟ͔ͭͬͨ৔߹ͷӨڹ౓͕େ͖͍ ·ͨɺ׳शతʹɺ-JOVYίϯςφ͕׬શΞΠιϨʔγϣϯΛఏڙ࢝͠Ίͨͷ͸ ͘͝࠷ۙͷ͜ͱͳͷͰɺ׬શͳϧʔτϨϕϧͷϚϧνςφϯτͳγεςϜΛ ఏڙ͢Δ৔߹ʹ͸࢖͏΂͖Ͱ͸ͳ͍ɻ

    ҰํͰɺͭͷϚγϯͰෳ਺ͷγϯάϧςφϯτͳϫʔΫϩʔυΛಈ͔ͨ͢Ίʹ ΞϓϦέʔγϣϯϨϕϧͰ෼཭͢Δ্Ͱ͸ඇৗʹ༏Ε͓ͯΓɺ ·ͩ·ͩ͜ͷ໨తʹϋΠύʔόΠβΛ༻͍Δਓͨͪ͸ଟ͍͕ɺ ࣮ࡍʹ͸ϋΠύʔόΠβͰ࢖ΘΕΔϦιʔε͸͔ᷮ͘͝ʹա͗ͳ͍ɻ
  12. ڧ͗͢Δɾɾɾ

  13. ίϯςφࣗମ͸৽͘͠ͳ͍ w DISPPU   w 6/*9্Ͱ͋ΔσΟϨΫτϦΛٖࣅతʹผ؀ڥʹݟͤΔ࢓૊Έ w 'SFF#4%KBJM 

     w DISPPUΛϕʔεʹ࡞ΒΕͨԾ૝Խٕज़ w (PPHMF#PSH   w ͷͪͷ,VCFSOFUFTͷલ਎ w 4PMBSJT$POUBJOFST;POF 
  14. ͳͥ͜Μͳʹલ͔Β͋ͬͨͷʹ %PDLFS͕ٸʹྲྀߦͬͨͷ͔

  15. Θ͔Γ·΁Μ ΋͏গ͠୳ͬͯΈ·͠ΐ͏

  16. ͦͷޙͷܦҢ  w 1SPDFTT ͷͪͷDHSPVQT ͕ੜ·Εͨ   w Ϧιʔε੍ݶɺ༏ઌॱҐ෇͚ͳͲͷࠓ%PDLFS͕࢖͍ͬͯΔػೳؚΉ

    w TZTUFNEɺ$PSF04ɺ)BEPPQͳͲͰ΋ར༻ w "6'4WϦϦʔε   w ϨΠϠʔߏ଄ͷϑΝΠϧγεςϜαʔϏε w HJUͷΑ͏ʹෳ਺ͷҟͳΔϑΝΠϧγεςϜΛ૚ͷΑ͏ʹॏͶΔ͜ͱ͕Ͱ͖ ΔɻϚʔδͱ͔΋Ͱ͖Δɻ%PDLFSΠϝʔδͷݪܕʂ
  17. ͦͷޙͷܦҢ  w ೥͔Β೥ʹ͔͚ͯෳ਺ͷOBNFTQBDFपΓͷΧʔωϧ࣮૷͕ਐ Ή w ϓϩηεؒ௨৴ w 1*%෼཭ w

    /8෼཭ͳͲͷػೳ͕ॱ࣍௥Ճ
  18. %PDLFS஀ੜ .BSDI EPU$MPVE͕ࣾ -JOVYͷίϯςφϥϯλΠϜ %PDLFSΛΦʔϓϯιʔεͰ ެ։͢Δ͜ͱΛൃද

  19. ೥݄%PDLFS໊ࣾมߋ w EPU$MPVE *OD%PDLFS *OD w ಛʹͦΕҎ֎͸ͳ͠

  20. ೥݄%PDLFS$PNQPTF w %PDLFSίϯςφΛෳ਺ಉ࣌ʹಈ͔ͨ͢Ίͷιϑτ΢ΣΞ w EPDLFSDPNQPTFZBNMΛ࢖ͬͨએݴత͔ͭ؆୯ͳίϯςφૢ࡞ w Ҿ਺ΛίʔυԽͰ͖ΔͷͰࣗಈԽʹ΋૊ΈࠐΈ΍͍͢

  21. ೥݄%PDLFS w ίϯςφͷ࣮૷͕-9$͔ΒMJCDPOUBJOFSʹ
 ஔ͖׵Θͬͨ

  22. ೥݄%PDLFS w %PDLFSͷਖ਼ࣜ൛ϦϦʔε w %PDLFS)VC w %PDLFSΛத৺ͱͨ͠ΞϓϦέʔγϣϯͷ#VJME 4IJQ 3VOͷϓϥοτ ϑΥʔϜ

    w ίϯςφϥϯλΠϜͰ͋Δ%PDLFS͸%PDLFS&OHJOFͱͯ͠ͷҐஔ෇͚
  23. ೥݄%PDLFS

  24. ೥݄%PDLFS4XBSNൃද w %PDLFSίϯςφΛෳ਺ϗετͰಈ͔ͨ͢Ίͷιϑτ΢ΣΞ w %PDLFSωΠςΟϒͳΫϥελϦϯάγεςϜ w ΤϯυϙΠϯτͰΫϥελશମͷίϯςφϫʔΫϩʔυΛ؅ཧ

  25. ೥݄,VCFSOFUFT͕ެ։ w ,VCFSOFUFT͕ެ։ w ͋ͱͰ΋͏গ͠۷ΓԼ͛·͢

  26. ೥݄%PDLFS w %PDLFS4XBSN͕4XBSNNPEFͱͯ͠౷߹ w ͜Εʹ߹Θͤͯɺ%PDLFS$PNQPTFͷػೳ΋౷߹ w ˞๻͕࢖͍࢝Ίͨͷ͕͜ͷ͘Β͍

  27. ೥݄.PEZ1SPKFDUൃද w %PDLFS$POʹͯൃද͕͋ͬͨ΍ͭ w %PDLFSͷίϯϙʔωϯτΛࡉ෼Խͯ͠࠶ར༻Ͱ͖ΔΑ͏ʹ͢Δ΍ͭ w SVODɺDPOUBJOFSEɺ#VJME,JUͳͲɺ%PDLFS͕ར༻͍ͯ͠Δίϯϙʔω ϯτΛଞͷϓϩδΣΫτͰ΋࢖͑ΔΑ͏ػೳϨϕϧͰΦʔϓϯιʔεԽ

  28. ֎෦ͱͷڠௐ w ($1͕%PDLFSରԠΛൃද w ೥ʹ͸("&Ͱͷαϙʔτ΋௥Ճ w "84͕1BB4ͷ&#ʹ%PDLFSΛ௥Ճ w ʹ͸&$4Λൃද w

    .JDSPTPGU͕%PDLFSͷ8JOEPXTαϙʔτΛൃද w "[VSFͱͷ࿈ܞ΋
  29. ͱ·͋ɺ͍ΖΜͳ͜ͱ͕ ͋Γ·ͨ͠

  30. ࠓ͸ͲΜͳײ͡ʁ

  31. %PDLFSͷಛ௕ ݱࡏ w SVOD ͔ͭͯͷMJCDPOUBJOFS ϕʔεͷίϯςφԾ૝Խ w OBNFTQBDFʹΑΔϦιʔεͷִ཭ FHϢʔβʔɺ/8ɺ1*%ɺ'4౳ 

    w ϗετ͔Β෼཭͞Εۭͨؒʹஔ͔ΕΔ w DHSPVQTʹΑΔϦιʔε੍ݶ $16 ϝϞϦͳͲΛϓϩηε͝ͱʹ੍ݶ  w $-*ͳͲΛܦ༝ͯ͠ɺDPOUBJOFSE͕SVODʹ໋ྩΛૹΔ w 0WFSMBZ'4ͱ͍͏-BZFSFE'JMFTZTUFNΛ༻͍ͨ$P8 w ϩΪϯά΍มߋ؅ཧͷػೳͳͲΛಠࣗʹ࣮૷ w #VJME 4IBSF 3VOʹΑΔίϯςφΛத৺ͱͨ͠ΞϓϦέʔγϣϯσϦόϦʔج൫
  32. %PDLFSͷಛ௕ ݱࡏ

  33. %PDLFSͷ͍͍ͱ͜Ζ w %PDLFSpMFͱ%PDLFS)VC ίϯςφϨδετϦ Λ࢖ͬͨ؆୯ͳ഑෍ w %PDLFS$PNQPTFΛ࢖ͬͨ؆୯͔ͭॊೈͳ؅ཧ w ϙʔλϏϦςΟͱႈ౳ੑ w

    ֤ࣾΫϥ΢υϕϯμʔͷαϙʔτঢ়گ
  34. %PDLFS,VCFSOFUFT 5ISPVHIUIF"HFT $MPVE/BUJWF.FFUVQ5PLZP 1SFTFOUFECZ!@JOEVDUPS@

  35. ೥݄ ,VCFSOFUFTϦϦʔε

  36. ,VCFSOFUFTͷಛ௕ ϦϦʔε࣌ w (PPHMF͕#PSHΛ೥Ҏ্ӡ༻ͯ͠஝ੵͨ͠ϊ΢ϋ΢Λू໿ͨ͠044 w ։ൃ΋(PPHMF͕த৺ w %PDLFSͱFUDEΛίΞͱͨ͠෼ࢄܕίϯςφ࣮ߦج൫ w "1*Λى఺ʹɺFUDEʹॻ͔ΕͨεςʔτΛਖ਼ͱ͠


    ͦͷঢ়ଶΛίϯςφج൫্Ͱҡ࣋͠ଓ͚Δ w ίϯτϩʔϧϓϨʔϯͰ͋ΔϚελʔͱɺϫʔΧʔͰ͋ΔϛχΦϯ͔ΒͳΔ
  37. None
  38. ೥݄,VCFSOFUFT w (PPHMFY-JOVY'PVOEBUJPO$MPVE/BUJWF$PNQVUJOH'PVOEBUJPO w ౰࣌ͷ,VCFSOFUFT͸(PPHMFࡿԼͷϓϩδΣΫτͩͬͨ w ͜ΕҠߦ͸$/$'͕,VCFSOFUFTͷϗεςΟϯάΛߦ͏Α͏ʹͳͬͨ

  39. ೥݄,VCFSOFUFT w $3* $POUBJOFS3VOUJNF*OUFSGBDF ͷЋϦϦʔε w LVCFMFU ,VCFSOFUFTͷϊʔυͰ1PEͷ؅ཧΛ͢Δίϯϙʔωϯτ ͱ
 ίϯςφϥϯλΠϜΛܨ͛ΔͨΊͷΠϯλʔϑΣʔε࢓༷

  40. $3*ͰมΘΔ%PDLFSͱ,VCFSOFUFTͷؔ܎ w %PDLFS͸,VCFSOFUFTʹͱͬͯ$3* ίϯςφΛ࣮ߦͤ͞ΔͨΊͷϥϯλΠϜ࣮૷ ͷͭ w ,VCFSOFUFT্ͰίϯςφΛʮಈ͔͚ͩ͢ʯͰ͋Ε͹ଞͷ$3*Λ࢖͏͜ͱ΋Ͱ͖Δ w DPOUBJOFSE w

    DSJP౳ w %PDLFS΁ͷґଘΛഉআ͢Δಈ͖ʁ w ґଘ౓͸ബ·Δ͕ɺ%PDLFS͕׬શʹഉআ͞ΕΔͷͰ͸ͳ͘
 ཁ݅ʹ߹Θͤͯ࢖͍෼͚ΒΕΔΑ͏ʹͳͬͨ
  41. ओཁύϒϦοΫΫϥ΢υͷରԠ w (,& ൃද  w ",4 ("  w

    ͨͩ͠લʑ͔Β"$4ͱ͍͏ผͷαʔϏε͕͋ͬͨ w &,4 ൃද
  42. ओཁύϒϦοΫΫϥ΢υͷରԠ w ΋ͪΖΜɺ0,&΋͋Γ·͢Αʂ

  43. ίϛϡχςΟࣄ৘

  44. $FSUJpFE,VCFSOFUFT w $/$'͕ೝূ͍ͯ͠Δ,VCFSOFUFTσΟετϦϏϡʔγϣϯͨͪ w .JOJLVCFɺ.JDSPLTɺLJOEͳͲͷϩʔΧϧͰؾܰʹͰ͖Δ΍ͭ w %PDLFS %FTLUPQ $&&& 

    w 3FE)BU0QFO4IJGUɺ1,4ɺ3BODIFSͳͲͷΫϩεϓϥοτϑΥʔϜͳ΍ͭ w (,&",4&,40,&ͳͲͷύϒϦοΫΫϥ΢υͷαʔϏε w ,VCFSOFUFT$FSUJpFE4FSWJDF1SPWJEFSͳΔ΋ͷ΋͋Δʢলུʣ w ৄ͘͠͸IUUQTLVCFSOFUFTJPQBSUOFST
  45. ଞʹ΋৭ʑ͋Δ͚Ͳ͕࣌ؒ
 ଟ෼଍Γͳ͍ͷͰ·ͱΊ·͢

  46. ,VCFSOFUFTͷಛ௕ ݱࡏ w (PPHMF͕#PSHΛ೥Ҏ্ӡ༻ͯ͠஝ੵͨ͠ϊ΢ϋ΢Λू໿ͨ͠044 w $/$'͕ϗεςΟϯά͠ɺ։ൃ͸ίϛϡχςΟ͕ओମ w ίϯςφϥϯλΠϜͱFUDEΛίΞͱͨ͠෼ࢄܕίϯςφ࣮ߦج൫ w "1*Λى఺ʹɺFUDEʹॻ͔ΕͨεςʔτΛਖ਼ͱ͠


    ͦͷঢ়ଶΛίϯςφج൫্Ͱҡ࣋͠ଓ͚Δ w ίϯτϩʔϧϓϨʔϯͰ͋ΔϚελʔͱɺϫʔΧʔͰ͋Δϊʔυ͔ΒͳΔ
  47. ·ͱΊ w ίϯςφ͸ੲ͔Β͚͋ͬͨͲɺΤίγεςϜ͸ࠓͷ%PDLFS,VCFSOFUFT ΄Ͳࠜڧ͍΋ͷ͕ͳ͔ͬͨ w ,VCFSOFUFTͷ։ൃ͸ίϛϡχςΟʹΑͬͯ੒Γཱ͍ͬͯΔ w (PPHMFͷϓϩμΫτͰ͸ͳ͍ w %PDLFS΋࣮͸NPCZͱ͍͏ΦʔϓϯιʔεϓϩδΣΫτ͕ϕʔε

    w ࠓɺ৽͍͠৘ใΛ΢Υον͢Δͷ͸ͦΜͳʹ೉͘͠ͳ͍
  48. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ