Pro Yearly is on sale from $80 to $50! »

Dockerでアプリケーションを 本番リリースするまで

Dockerでアプリケーションを 本番リリースするまで

とにかく、コンテナを本番にリリースするにはどうしたら良いか。その1点にフォーカスしました。

F04982ad61107b5408ad139966596316?s=128

Ryo Tomidokoro

October 08, 2017
Tweet

Transcript

  1. DockerͰΞϓϦέʔγϣϯΛ ຊ൪ϦϦʔε͢Δ·Ͱ 1)1$POGFSFODF *OOPWBUPS+BQBO*OD ෋ॴ྄ &OHJOFFS

  2. ͓஌Βͤ εϥΠυ͸SpeakerDeckʹΞοϓ͠·͕͢… ࡱӨ౳΋ࣗ༝ʹͯ͠௖͍ͯ໰୊͋Γ·ͤΜ !IBOIBO QIQDPOQIQDPO@

  3. ࣮͸ ෱ԬͷϖνίϯͰಉ༷ͷηογϣϯΛͨ͠ https://speakerdeck.com/hanhan1978/dockerwoben-fan-deshi-tutemitefen-katutakoto

  4. ྫ͑͹͜Μͳ಺༰ 1. ։ൃ࣌ʹԿΛ͢΂͖͔ʁ 2. CIͷ࿩ 3. ຊ൪Ͱdockerಈ͔࣌͢ͷ᠘

  5. ࠓ೔͸গ͠झ޲Λม͑·͢ɻ

  6. %PDLFSͷຊ൪ීٴ཰͸·ͩ·ͩ௿͍ Docker৮ͬͯΈͨΒɺ͜Ε͸ྑ͍΋ͷͩͬͨʂ ͱ͸͍͑ɺ͍͖ͳΓձࣾʹDockerͷಋೖ͸ग़དྷͳ͍ ࠓ͸΍Ί͓ͯ͜͏…(᜛ٞͱ͔େมͩ͠) ݁Ռͱͯ͠஌ݟ͕ཷ·Βͳ͍ ͜ͷྲྀΕ͸Subversion -> Git ͷ࣌ʹ΋ݟͨ

  7. νϚνϚͨ͠࿩͸ɺݱஈ֊Ͱ͸ແҙຯ

  8. ຊ೔ͷςʔϚ

  9. وํͷϋʔτʹՐΛ͚ͭΔ

  10. ͭ·Γ ͜ͷηογϣϯΛػձʹ وํ͕ίϯςφΛຊ൪ʹ ϦϦʔεͨͯͨ͘͠·Βͳ͘ͳΔʂ ίϯςφຊ൪ϦϦʔεͷ࣮੷Λղআͯ͠΋Β͏ʂ

  11. ͋͞͸͡Ί·͠ΐ͏ɻ RIP - Vagrant

  12. DockerίϯςφΛຊ൪Ͱ࢖ ͏ͷʹඞཁͳ͜ͱ

  13. ඞཁͳࣄ 1. Twelve Factor App 2. Dockerͷجૅ஌ࣝ 3. Docker࣮ߦ؀ڥʹର͢Δཧղ ൱ʂʂ

  14. ຊ౰ʹඞཁͳ͜ͱ 1. ਂ͘ߟ͑ͳ͍ 2. ίϐϖ 3. ΫϨδοτΧʔυ

  15. ͱ͸͍͑

  16. ࠷௿ݶͷ஌ࣝ

  17. ࠷௿ݶͷ̏ͭ 1. ϩʔΧϧͰίϯςφΛ࡞੒ 2. ϨδετϦʹPUSH 3. ຊ൪ʹϦϦʔε

  18. ࠷௿ݶͷͭͷਤ

  19. ୅දతϚωʔδυɾαʔϏε (,&(PPHMF$POUBJOFS&OHJOF %PDLFS$MPVE4XBSN.PEF #&5"

  20. ,VCFSOFUFT౾஌ࣝ ɾΫόϧωςεͱಡΉ ɾ,4ͱུ͢ ɾ<LPPCFSOBZ`UBDF> ɾ4BJMJOH.BTUFSધͷૢॎऀ

  21. %PDLFS4XBSN౾஌ࣝ ɾε΢ΥʔϜͱಡΉ ɾུশ͸ແ͍ ɾ4XBSN܈Ε

  22. ͔͜͜Β͸ຊ൪؀ڥͷछྨ͝ͱ ʹखॱΛ঺հ͠·͢

  23. (,& ,VCFSOFUFT ฤ ࣄલ४උ GCPͷΞΧ΢ϯτ࡞੒ ίϯςφΫϥελͷ࡞੒ https://cloud.google.com/container-engine/docs/clusters/operations?hl=ja gcloudίϚϯυͷΠϯετʔϧ https://cloud.google.com/container-engine/docs/before-you-begin?hl=ja kubectlίϚϯυͷΠϯετʔϧ

  24. (,& ,VCFSOFUFT ฤ ϩʔΧϧͰͷίϯςφ࡞੒ EPDLFSCVJMEUHDSJP\130+&$5@*%^TBNQMFCMPHW EPDLFSSVOUSNQHDSJP\130+&$5@*%^TBNQMFCMPHW ಈ࡞֬ೝ

  25. (,& ,VCFSOFUFT ฤ HDMPVEEPDLFSQVTIHDSJP\130+&$5@*%^TBNQMFCMPHW ϨδετϦʹPUSH

  26. (,& ,VCFSOFUFT ฤ LVCFDUMSVOTBNQMFJNBHFHDSJP\130+&$5@*%^TBNQMFCMPHWQPSU LVCFDUMFYQPTFEFQMPZNFOUTBNQMFUZQF-PBE#BMBODFSQPSU ຊ൪ϦϦʔε ֬ೝ LVCFDUMHFUTFSWJDF

  27. 4XBSN.PEFฤ ࣄલ४උ Docker cloudͷΞΧ΢ϯτ࡞੒ https://cloud.docker.com AWSͷΞΧ΢ϯτ࡞੒ https://cloud.docker.com SwarmΫϥελͷ࡞੒

  28. 4XBSN.PEFฤ ϩʔΧϧͰͷίϯςφ࡞੒ EPDLFSCVJMEUSFHJTUSZHJUMBCDPNIBOIBOCMPHW EPDLFSSVOUSNQSFHJTUSZHJUMBCDPNIBOIBOCMPHW ಈ࡞֬ೝ

  29. 4XBSN.PEFฤ EPDLFSQVTISFHJTUSZHJUMBCDPNIBOIBOCMPHW ϨδετϦʹPUSH

  30. 4XBSN.PEFฤ EPDLFSTFSWJDFDSFBUFOBNFTBNQMFQVCMJTISFQMJDBT SFHJTUSZHJUMBCDPNIBOIBOCMPHW ຊ൪ϦϦʔε ֬ೝ EPDLFSTFSWJDFMT

  31. )FSPLVฤ ࣄલ४උ herokuίϚϯυͷΠϯετʔϧ herokuͷΞΧ΢ϯτ࡞੒ https://cloud.docker.com

  32. )FSPLVฤ APPΛ࡞੒ͯ͠ɺPUSH IFSPLVDPOUBJOFSMPHJO IFSPLVDSFBUF IFSPLVDPOUBJOFSQVTIXFC IFSPLVPQFO ಈ࡞֬ೝ ίϯςφ࣮ߦ؀ڥͱ͍͏ΑΓ͸ɺίϯςφbuild & run

  33. DEMO

  34. ·ͱΊ

  35. ·ͱΊ Ϛωʔδυͳ؀ڥΛ࢖͏͜ͱͰɺ͔ͳΓ؆୯ɻ ؆୯ͳΞϓϦͳΒɺͳΜ͔͓ࢼ͠Ͱ͖ͦ͏͡Όͳ͍ʁ