Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GCPとPHP PHP Conference Japan 2020

hiroki.saito
December 12, 2020

GCPとPHP PHP Conference Japan 2020

PHP Conference Japan 2020

GCPとPHP

Google Cloud Platform(GCP)ではPHPを動かす環境がたくさんあります。

大きくわけて4つ、Google App Engine(GAE), Google Compute Engine(GCE),、Google Kubernetes Engine(GKE)、Cloud Run があります。

この発表では、それぞれの環境のことやオススメの使い方について、
また、どういう考えで環境を選ぶかというプロセスを実体験を交えながら、ご紹介します。

hiroki.saito

December 12, 2020
Tweet

More Decks by hiroki.saito

Other Decks in Technology

Transcript

  1. 3BEJPUBMLגࣜձࣾ੪౻༟ؾ ($1ͱ1)1 1)1$POGFSFODF+BQBO

  2. None
  3. ($1Ͱ 1)1Λಈ͔͢؀ڥ͸ ͨ͘͞Μ͋Δ

  4. લ൒ ($1Λ1)1Ͱಈ͔͢؀ڥɺͦΕͧΕͷಛ௃Λ ޙ൒ ࣮ࡍʹͲ͏͍͏બ୒Λͨ͠ͷ͔ ΞδΣϯμ

  5. ($1Ͱ 1)1Λಈ͔͢ͱ͖ͷ બ୒ࢶ੔ཧʹར༻ͯ͠΄͍͠ ͜ͷൃදʹ͍ͭͯ

  6. ੪౻༟ؾ 3BEJPUBMLגࣜձࣾ 3BEJPUBMLͷ1)1όʔδϣϯ ޷͖ͳϑϨʔϜϫʔΫ#&"34VOEBZ

  7. େ͖͘Θ͚Δͱͭͷબ୒ࢶ (PPHMF"QQ&OHJOF  (PPHMF$PNQVUF&OHJOF  (PPHMF,VCFSOFUFT&OHJOF  $MPVE3VO

  8. (PPHMF"QQ&OHJOFͷ؀ڥ (PPHMF"QQ&OHJOF ελϯμʔυ ϑϨΩγϒϧ 1)1ϥϯλΠϜ ΧελϜϥϯλΠϜ

  9. (PPHMF"QQ&OHJOF ϑϧϚωʔδυͷϗεςΟϯάαʔϏε ($1ͷதͰ΋ྺ࢙ͷ͋ΔαʔϏε όʔδϣχϯά΍τϥϑΟοΫ෼ׂͳͲ΋උ͑Δ

  10. ("&ελϯμʔυ (PPHMF͕ࣄલʹ༻ҙ͞ΕͨϥϯλΠϜͰಈ͘ 1)1ɺ1ZUIPOɺ+BWBɺ/PEFKTɺ3VCZɺ(PʹରԠ 1)1͸  ʹରԠ ແྉ࿮͋Γ σϓϩΠ͸τϥϑΟοΫ੾Γସؚ͑Ίͯ෼΄Ͳ

  11. ͜Ε͚ͩͰ0, BQQZNMΛॻ͍ͯɺ runtime: php74 ίϚϯυͰσϓϩΠ gcloud app deploy

  12. ϝϞϦͱ$16ʹ͍ͭͯ

  13. ("&ελϯμʔυ؀ڥͷ੍ݶ ର৅ͷݴޠ͔͠ରԠ͍ͯ͠ͳ͍ $16΍ϝϞϦͷ੍ݶ Πϯελϯε͸ಗ໊ σΟεΫ΁ͷॻ͖ࠐΈ੍ݶ UNQͷΈ  Φʔτεέʔϧ࣌ͷλΠϜΞ΢τ͸෼

  14. ("&ϑϨΩγϒϧ ։ൃऀ͔ΒݟΔͱ("&ͱͯ͠ར༻Ͱ͖Δ($& 6CVOUVʹج͍ͮͨ؀ڥͰ1)1͕ಈ͘ $16ɺϝϞϦߏ੒͕ॊೈ όʔδϣχϯάͳͲػೳ͸Ҿ͖ଓ͖ར༻Մೳ σϓϩΠ͸τϥϑΟοΫ੾Γସؚ͑Ίͯ෼΄Ͳ

  15. ("&ϑϨΩγϒϧ͸͜͏͍͏ͱ͖ʹ QIQJOJͷઃఆΛมߋ͍ͨ͠ 8FC4PDLFU $16΍ϝϞϦΛͨ͘͞Μར༻͢Δ

  16. ("&ΧελϜϥϯλΠϜ ϑϨΩγϒϧͷ͞ΒͳΔ֦ு %PDLFSGJMFΛ։ൃऀ͕࡞੒͢Δ %PDLFS্Ͱ)551ϦΫΤετΛॲཧՄೳͳΒ0,

  17. ("&ΧελϜϥϯλΠϜ͸͜͏͍͏ͱ͖ʹ 1)1ϥϯλΠϜͩͱ΍Εͳ͍͜ͱΛ΍ΔͨΊʹ ࠷৽ͷ1)1Λ࢖͍͍ͨ ϑϨΩγϒϧͰ͸ઃఆͰ͖ͳ͍1)1ͷ֦ுػೳΛ࢖͍͍ͨ 04Λมߋ͍ͨ͠ɺઃఆΛௐ੔͍ͨ͠

  18. (PPHMF$PNQVUF&OHJOF Ծ૝ϚγϯΛఏڙ ߴੑೳϋʔυ΢ΣΞ ඵ୯Ґͷ՝ۚ ܧଓར༻֬໿ར༻ͷׂҾ

  19. ($&͸͜͏͍͏ͱ͖ʹ ଞͷ7.͔ΒͷҠߦઌ (16Λར༻͢Δͱ͖ ϛυϧ΢ΣΞͷΫϥελΛ૊Ή

  20. (,& ϑϧϚωʔδυͷ,VCFSOFUFT Ϋϥελ؅ཧྉۚ ϫʔΧʔϊʔυ ($&  (16516 ,VCFSOFUFTΛར༻͍ͨ͠ͱ͖ʹ࢖͏

  21. $MPVE3VO ϑϧϚωʔδυͳίϯςφϗεςΟϯάαʔϏε )551H31$ʹରԠ $16΍ϝϞϦͷ੍ݶ͕͋Δ Քಇ͍ͯ͠Δͱ͖͚ͩͷ՝ۚNT୯ҐͰͷ՝ۚ όʔδϣχϯά΍τϥϑΟοΫ෼ׂͳͲ΋උ͑Δ

  22. $MPVE3VO͸͜͏͍͏ͱ͖ʹ ίϯςφԽࡁ ఆظతͳϦΫΤετॲཧ H31$Λར༻͍ͨ͠ͱ͖ʹ

  23. લ൒ͷ·ͱΊ γϯϓϧͳ8&#ΞϓϦέʔγϣϯͰ͋Ε͹ Լهͷॱ൪Ͱݕ౼ΛਐΊ͍ͯ͘ͷ͕Φεεϝ ("&ελϯμʔυPS$MPVE3VO ("&ͷϑϨΩγϒϧΧελϜϥϯ ($&(,&

  24. 3BEJPUBMLͰͷ࣮ྫ

  25. ͬ͘͟Γͱӡ༻͢Δ΋ͷ "1* 8&# ؅ཧπʔϧ όονॲཧ ೥͝Ζ

  26. ࠷༏ઌ Πϯϑϥඅ༻ ೥͝Ζ

  27. ࠷༏ઌΠϯϑϥඅ༻ ˣ ("&ελϯμʔυʜʁ ೥͝Ζ

  28. εέʔϦϯάͷ༏ઌ౓͸ʁ αʔϏεͷಛੑ্ϐʔΫλΠϜ͸͋Δ ͕ͩٸܹͳεύΠΫΞΫηε͸ͳ͍ ೥͝Ζ

  29. εέʔϦϯάͷ༏ઌ౓͸ߴ͘ͳ͍ αʔϏεͷಛੑ্ϐʔΫλΠϜ͸͋Δ ͕ͩٸܹͳεύΠΫΞΫηε͸ͳ͍ ˣ ॊೈͳΦʔτεέʔϧͷ༏ઌ౓͸ߴ͘ͳ͍ ೥͝Ζ

  30. ظݶͱਓతϦιʔε 0QFO4UBDL্͔ΒͷҠߦ ࣾ಺ࣄ৘ʹΑΓɺظݶ͕͋Δ ୲౰ऀ͸ਓ ೥͝Ζ

  31. ظݶͱਓతϦιʔε 0QFO4UBDL্͔ΒͷҠߦ ࣾ಺ࣄ৘ʹΑΓɺظݶ͕͋Δ ୲౰ऀ͸ਓ ˣ ಋೖίετɺֶशίετ͕ߴ͍બ୒ࢶ͸೉͍͠ ೥͝Ζ

  32. εΩϧηοτ 7.Ͱͷӡ༻ܦݧ͸๛෋ ߏ੒؅ཧ "OTJCMF ΋͋Δ %PDLFSΛαʔϏεϨϕϧͰͷܦݧ͸ͳ͠ ೥͝Ζ

  33. εΩϧηοτ 7.Ͱͷӡ༻ܦݧ͸๛෋ ߏ੒؅ཧ "OTJCMF ΋͋Δ %PDLFSΛαʔϏεϨϕϧͰͷܦݧ͸ͳ͠ ˣ ͦ΋ͦ΋($1΍Ϋϥ΢υ؀ڥ͕ॳΊͯ %PDLFSͱ͍͏νϟϯϨδΛ੝ΓࠐΉͷ͸ݫ͍͔͠΋ ೥͝Ζ

  34. ೥͝Ζ ظݶɺਓతϦιʔεɺεΩϧ ˣ ($&

  35. ($&Ͱ Πϯϑϥඅ༻Λ཈͑Δʹ͸Ͳ͏͢Δ͔ ೥͝Ζ

  36. ($&ͰΠϯϑϥඅ༻Λ཈͑Δʹ͸Ͳ͏͢Δ͔ ೥͝Ζ "1* 8&# ؅ཧπʔϧ ૬৐Γ όονॲཧ

  37. ࣌͸ྲྀΕʜ

  38. ৽ͨͳΔ՝୊ Ϣʔβʔͷٸ૿ ਓؾίϯςϯπ͕ެ։͞ΕΔͱॲཧ͕ෆ҆ఆʹ ΞϥʔτରԠΛ͢Δ೔ʑ ೥

  39. "1*Λ ٸ͍Ͱεέʔϥϒϧʹʜʂ

  40. Ͳͷ؀ڥͰ࣮ݱ͢Δ͔ (,& "1*ͷίϯςφ͸ͭͳͷͰΦʔόʔεϖοΫ ($& ($&ͰؤுΔͳΒ("&ͷ͕ӡ༻ͷखؒ͸গͳ͍ ೥

  41. ૬৐ΓΛ΍Ίͯ"1*Λ("&ʹ

  42. Ͳͷ("&؀ڥΛ࢖͏͔ ։ൃ؀ڥ͸ίϯςφԽࡁ OHJOY΍QIQJOJͷνϡʔχϯάΛ݁ߏ΍͍ͬͯΔ ;FOE0QDBDIFΛ࢖͍͍ͨ ೥

  43. Ͳͷ("&؀ڥΛ࢖͏͔ ։ൃ؀ڥ͸ίϯςφԽࡁ OHJOY΍QIQJOJͷνϡʔχϯάΛ݁ߏ΍͍ͬͯΔ ;FOE0QDBDIFΛ࢖͍͍ͨ ˣ ΧελϜϥϯλΠϜ ೥

  44. ݱࡏ "1*͸҆ఆ͠ɺ҆৺ͯ͠຾ΕΔΑ͏ʹͳΓ·ͨ͠ 8&#ͱπʔϧͷ૬৐Γ΋ղফ༧ఆ ೥

  45. ͜ͷܦݧ͔Βͷֶͼ αʔϏε΍νʔϜͱ޲͖߹͍ͳ͕Βબ୒͢Δ ঢ়گ͕มԽ͍ͯ͘͠ͳ͔Ͱվળ͍ͯ͘͠ ՝୊Λఆٛ͠ɺղܾ͢Δٕज़બ୒Λ͢Δ zૉৼΓz͕େࣄ

  46. ·ͱΊ ($1Ͱ1)1Λಈ͔͢બ୒ࢶ (PPHMF"QQ&OHJOF  (PPHMF$PNQVUF&OHJOF  (PPHMF,VCFSOFUFT&OHJOF  $MPVE3VO

  47. ·ͱΊ ؀ڥͷܾఆ͸νʔϜ΍αʔϏεͱ޲͖߹͍ͳ͕Β ؀ڥ͸վળ͍ͯ͘͠Ϟϊ ͍Ζ͍ΖͳࣄྫΛڞ༗͍͖ͯ͠·͠ΐ͏ʂ