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
20200805 GCP Cloud Run
Search
saramune
August 05, 2020
Technology
2
200
20200805 GCP Cloud Run
GCP Cloud Runで始める簡単モダンなコンテナアプリ開発
saramune
August 05, 2020
Tweet
Share
More Decks by saramune
See All by saramune
なんでもかんでもコンテナ化すればいいってもんでもないけど なんでもかんでもコンテナ化したらスッキリしました
saramune
1
190
ACKを活用して 使い捨てAWS検証環境を構築している話
saramune
0
640
KubernetesとTerraformのセキュリティ/ガバナンス向上委員会 with OPA
saramune
2
1.1k
脱・初心者!AWSコンピューティング・ネットワークのテクニック集
saramune
2
600
うんうん、それ(EC2+ASG)もまたCloudNativeだね
saramune
1
360
Cloud Runについて(iret tech labo vol.6)
saramune
0
170
しくじり先生 on AWS
saramune
0
65
AWSしくじり先生
saramune
3
1.9k
コンテナ使い見習いのレベル上げ
saramune
3
150
Other Decks in Technology
See All in Technology
大規模データとの戦い方
knih
1
480
Autify Company Deck
autifyhq
1
30k
データ化エンジニアとしての1年を振り返る
sansantech
PRO
3
260
エバンジェリスト活動を7年やってきて見えてきた、コミュニティとエバンジェリストの関係
soracom
PRO
1
200
XRミーティング 2024-03-20
1ftseabass
PRO
0
100
20240321_生成AI時代のDevOps
kzkmaeda
2
610
TypeScript Quiz (Encraft #12 Frontend Quiz Night)
uhyo
6
700
KubeCon EU 2024 : Knative Maintainers Session
salaboy
0
380
Azureコストは水道代/The_47th_Tokyo_Jazug
aeonpeople
3
380
匠MethodとRDRAとICONIXとDDDで実現する一気通貫オブジェクト指向開発
haru860
4
2.1k
ハイパフォーマンスな組織をつくるための開発生産性の考え方 / developer-productivity-high-performer-link-and-motivation
lmi
3
270
イチから学ぶdbt / Learn dbt from scratch
shinyaa31
0
130
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
10
830
Building Your Own Lightsaber
phodgson
97
5.6k
Atom: Resistance is Futile
akmur
258
25k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
39
4.3k
Designing for humans not robots
tammielis
247
25k
A better future with KSS
kneath
230
16k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
67
38k
Build your cross-platform service in a week with App Engine
jlugia
223
17k
Agile that works and the tools we love
rasmusluckow
323
20k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
5
1.4k
Testing 201, or: Great Expectations
jmmastey
27
6.3k
Transcript
ϋογϡλάLVNPCFO ࣌։࢝༧ఆͰ͢ɻ͠Β͓ͪ͘Լ͍͞
λΠϜεέδϡʔϧ w JSFUʹ͍ͭͯ w ษڧձ w ࣭ٙԠ
() 392 (4 ( ( 10 5 .(
!
($1$MPVE3VOͰ࢝ΊΔ ؆୯ϞμϯͳίϯςφΞϓϦ։ൃ $MPVE3VO͔Θ͍͍Α$MPVE3VO
ࣗݾհ w ݹܒհ w ॴଐJSFUגࣜձࣾDMPVEQBDL w ৬։ൃ͕͋ΓͷΠϯϑϥΤϯδχΞ w ࣄ"84ͱΠνϟΠνϟ w
झຯυϥϜ
ҙ w ($1ެࣜͷղઆࢿྉͱࣅͯ·͢ w Ͳ͏ͯ͠ࣅͯ͠·͏ʜ w $MPVE3VOʹ֮Ίͦ͏ͳํੋඇެࣜࢀর͍ͩ͘͞ w ·͡Ͱ$MPVE3VOͷ͚ͩͰ͢ w
ίϯςφ,VCFSOFUFTͷਂ͍͠·ͤΜ w ࣭:PVUVCF-JWFͷίϝϯτʹͲ͏ͧʂ w ࢿྉޙڞ༗͠·͢
؆୯ϞμϯͳίϯςφΞϓϦ։ൃ
؆୯ϞμϯͳίϯςφΞϓϦ։ൃʁ w Έͳ͞·ͷϞνϕʔγϣϯʢ૾ʣ w ίϯςφΞϓϦ w ίϯςφ͔ͩΒڵຯ͋Δ w ؆୯Ϟμϯͳ w
ίϯςφͷ࣮ӡ༻͍ͬͯ͠Πϝʔδ ,VCFSOFUFTͱ͔ʜ
ίϯςφͱ w ࣮ߦڥͱϓϩηεΛ࠶ݱՄೳͳঢ়ଶͰݻΊͨͷ w ͳͥίϯςφʁ w ։ൃͱຊ൪Ͱڥࠩҟ͕Ͱͳ͍ w Ͳ͜Ͱಈ͘ʢΦϯϓϨɾΫϥυʣ w
ܰྔ
ίϯςφͱ͍͑,VCFSOFUFTʁ w ίϯςφΛຊ൪ڥͰӡ༻͢ΔͨΊͷΤίγεςϜ w ͳͥ,VCFSOFUFTʁ w ࣗಈͰίϯςφ෮چ w ͍͍ײ͡ʹίϯςφඋ w
ϩʔυόϥϯγϯά w ӡ༻͏·ΈͭΒΈ
$MPVE3VOΛ͏ͱʁ ࠓʢʁʣͷίϯςφΞϓϦΛ ,VCFSOFUFTͷࣝͳ͠ʹ ࠷৽ͷΞʔΩςΫνϟͰຊ൪ӡ༻Ͱ͖Δ
$MPVE3VOΛ͏ͱʁ ࠓʢʁʣͷίϯςφΞϓϦΛ ,VCFSOFUFTͷࣝͳ͠ʹ ࠷৽ͷΞʔΩςΫνϟͰຊ൪ӡ༻Ͱ͖Δ
࣍ w $MPVE3VOͱ w $MPVE3VOͷίϯηϓτ w $MPVE3VOͱ$*$% w ͦͷଞτϐοΫ
࣍ w $MPVE3VOͱ w $MPVE3VOͷίϯηϓτ w $MPVE3VOͱ$*$% w ͦͷଞτϐοΫ
$MPVE3VOͱ ࠓʢʁʣͷίϯςφΞϓϦΛ ,VCFSOFUFTͷࣝͳ͠ʹ ࠷৽ͷΞʔΩςΫνϟͰຊ൪ӡ༻Ͱ͖Δ
$MPVE3VOͱ w ϑϧϚωʔδυͳ,OBUJWFϕʔεͷαʔόϨείϯϐϡʔτ
$MPVE3VOͱ w ϑϧϚωʔδυͳ,OBUJWFϕʔεͷαʔόϨείϯϐϡʔτ
,OBUJWFͱ w ,VCFSOFUFTͰͷΞϓϦӡ༻Λॿ͚Δ044 w ,VCFSOFUFTΛ1BB4MJLFʹநԽ͢Δ w ։ൃऀ͕zΑΓzίʔυΛॻ͘͜ͱʹઐ೦Ͱ͖Δ
αʔόϨεͱ w αʔόཧΛඞཁͱ͠ͳ͍ΞϓϦέʔγϣϯͷߏஙͱ࣮ߦ w 㱠αʔό͕ͳ͍ɺӡ༻ΤϯδχΞ͕͍Βͳ͍ w ར༻ऀ͕αʔόͷཧʹϦιʔεΛඅ͢ඞཁ͕ͳ͍ ˞$/$'4FSWFSMFTT8IJUFQBQFSWΑΓ
ʢ࠶ܝʣ$MPVE3VOͱ w ϑϧϚωʔδυͳ,OBUJWFϕʔεͷαʔόϨείϯϐϡʔτ
ʢ࠶ܝʣ$MPVE3VOͱ w ϑϧϚωʔδυͳ,OBUJWFϕʔεͷαʔόϨείϯϐϡʔτ ($1͕ཧɾӡ༻͢Δ ,VCFSOFUFT ,OBUJWFͳαʔόϨεڥͰ ίϯςφΛಈ͔ͤΔαʔϏε
Կ͕͏Ε͍͠ͷʁ w ,VCFSOFUFTͷ͓कΓΛ͠ͳͯ͘Α͍ w ίϯςφͭ͘Δ͚ͩͰ0,ʂ w Θͳ͍ͱ͖͓͕͔͔ۚΒͳ͍ w ίϯςφUP/εέʔϧ͢Δ w
ଞڥͷࡌͤସ͕͑༰қ w Ͳ͔ͬͪͱ͍͏ͱίϯςφͷ͍͍ͱ͜Ζ
$MPVE3VOϓϥοτϑΥʔϜ w $MPVE3VO ϑϧϚωʔδυ w ࠓճͪ͜ΒʹϑΥʔΧε w $MPVE3VOGPS"OUIPT w
"OUIPT(,&্ʹߏங͞ΕΔ$MPVE3VO w ΑΓࣗ༝͕ߴ͍ (16͑ΔͳͲ
࣍ w $MPVE3VOͱ w $MPVE3VOͷίϯηϓτ w $MPVE3VOͱ$*$% w ͦͷଞτϐοΫ
$MPVE3VO ,OBUJWF ͷ֓೦ w αʔϏε w ίϯςφΠϯελϯε w ϦϏδϣϯ
αʔϏε w ࠷্ҐͷཧϦιʔε w ಉҰίϯςφΛ·ͱΊͯநԽ͢Δ w ΞϓϦͷΤϯυϙΠϯτ )5514 Λఏڙ͢Δ w
BSVOBQQυϝΠϯ·ͨΧελϜυϝΠϯ͕બՄೳ w -FU`T&ODSZQUͷ44-ূ໌ॻΛࣗಈͰੜɺׂΓͯͯ͘ΕΔ
ίϯςφΠϯελϯε w <W$16> w PS w ϝϞϦ<.#> w <.#>ʙ<(#>
w ϑΝΠϧγεςϜಡΈॻ͖Մ w ͰجຊεςʔτϨεʹ͠·͠ΐ͏
ίϯςφΠϯελϯε w ੍ w -JOVYY@ڥ w ͔ͭڥมz1035zʹରͯ͠-JTUFO͢Δ w ΞϓϦଆͰڥมz1035zΛҙࣝ͢Δඞཁ༗Γ
w ϨεϙϯελΠϜΞτσϑΥϧτ ."9
ϦϏδϣϯ w ίϯςφΠϝʔδͱڥมΛ·ͱΊͨͷ w Πϛϡʔλϒϧ w ϩʔϧόοΫ$BOBSZϦϦʔε͕Ͱ͖Δ
ਤͰ͍͏ͱ
$MPVE3VO ,OBUJWF ͷεέʔϦϯά w ಉ࣮࣌ߦͷ੍ޚ w UP/εέʔϧ
ಉ࣮࣌ߦͷ੍ޚ w ֤ίϯςφ͕͍ͭ͘ϦΫΤετΛॲཧ͢Δ੍͔ޚՄೳ w ίϯςφ͋ͨΓ࠷େϦΫΤετ·Ͱ w ͪͳΈʹɺ$MPVE'VODUJPOTϦΫΤετίϯςφ w ϦΫΤετͷϦιʔε༻ྔͱ૬ஊͯ͠࠷దͳΛݟ͚ͭΔ
ਤͰ͍͏ͱ
UP/εέʔϧ w Φʔτεέʔϧ w ϦΫΤετΛ͚͞Δ͚ͩͷίϯςφ͕উखʹ্ཱ͕ͪΔ w σϑΥϧτ࠷େίϯςφʢ؇Մೳʣ w ϦΫΤετ͕ͳ͘ͳͬͨΒίϯςφ
ίʔϧυελʔτ w ίϯςφʹͳΔίʔϧυελʔτ w ʹͳΔͱ·ͨΠν͔Βίϯςφ࡞Γ͕͔͔࣌ؒ͠Δ w ରࡦ w ಉ࣮࣌ߦͷௐ w
ίϯςφࣗମΛܰ͘͢Δ w ʢ$MPVE4DIFEVMFSͱ͔Ͱͪΐ͍ͪΐ͍ىಈʣ
ଞͷαʔϏεͱͷൺֱ w "QQ&OHJOF w ϥϯλΠϜ੍͋Γɺཧରιʔείʔυ w ϓϩδΣΫτϦʔδϣϯͷറΓ w $MPVE'VODUJPOT w
ϥϯλΠϜ੍͋Γɺཧରιʔείʔυ w Πϕϯτۦಈɺ͋͘·Ͱؔ
$MPVE3VO͔͍ͭͲ͜Ζ w "QQ&OHJOF$MPVE'VODUJPOTඇରԠͷݴޠΛ͍͍ͨʂ w ίϯςφͳͷͰϥϯλΠϜ੍ͳ͠ w طଘͷࢿ࢈Λ༗ޮ׆༻Ͱ͖Δ w ࠓޙΛݟਾ͑ͯίϯςφͰ࣮ͯ͠Έ͍ͨʂ w
Πϯϑϥ໘ݟΔඞཁͳ͠ɺεϞʔϧελʔτՄೳ w ,VCFSOFUFTΒͳͯ͘େৎ
%FNP w ($1ίϯιʔϧʹͯαʔϏεͷ࡞
࣍ w $MPVE3VOͱ w $MPVE3VOͷίϯηϓτ w $MPVE3VOͱ$*$% w ͦͷଞτϐοΫ
$MPVE3VOͰͷ$*$%
$MPVE#VJME w lαʔόϨεzͰϏϧυͰ͖Δ w $MPVE4PVSDF3FQPTJUPSJFTͷมߋΛτϦΨʔՄೳ w σϓϩΠՄೳ
%FNP w ιʔείʔυॻ͖͑ͯQVTIͯ͠มߋ֬ೝ
࣍ w $MPVE3VOͱ w $MPVE3VOͷίϯηϓτ w $MPVE3VOͱ$*$% w ͦͷଞτϐοΫ
ͦͷଞτϐοΫ w ϩΪϯάɺϞχλϦϯά w ྉۚ w ࠷ۙͷ6QEBUF
ϩΪϯάɺϞχλϦϯά w ϦΫΤετϩάɺίϯςφϩά w $MPVE-PHHJOH w ֤छϝτϦΫε $16 w
$MPVE.POJUPSJOH ࡞Γࠐ·ͳ͍͍ͯ͘ײ͡ʹܭଌͰ͖Δ
ྉۚ w "MXBZT'SFF͋Γ w $16ɺϝϞϦɺϦΫΤετɺωοτϫʔΫͷ߹ܭֹ
࠷ۙͷ6QEBUF w 5SB⒏D.BOBHFNFOU w ϦϏδϣϯؒͷϩʔϧόοΫɺ#(σϓϩΠ͕Մೳʹ w ͱͱ,OBUJWFͷػೳ
࠷ۙͷ6QEBUF w 4FSWFSMFTT71$"DDFTTDPOOFDUPS w 71$ͷϦιʔε .FNPSZTUPSFͳͲ ʹΞΫηεՄೳʹ
࠷ۙͷ6QEBUF w 4FSWFSMFTT/&(ରԠ #FUB w ϩʔυόϥϯαͷഎޙʹඋՄೳʹ w αʔϏεͷҰ෦͚ͩ$MPVE3VOɺΈ͍ͨͳ͜ͱ͕Մೳ
࠷ۙͷ6QEBUF w ؇͔ͳϩʔϧΞτ w ৽نϦϏδϣϯʹྲྀ͢τϥϑΟοΫͷׂ߹Λ੍ޚՄೳʹ w ৽نϦϏδϣϯσϓϩΠ w λά͖63-͕ੜ͞ΕΔ
w τϥϑΟοΫͷͷΈ৽نϦϏδϣϯʹ͚Δ gcloud beta run deploy myservice —image image:f5bd774 --no-traffic --tag green https://green---myservice-abcdef.a.run.app gcloud beta run services update-traffic myservice --to-tags green=1
·ͱΊ w $MPVE3VOɺ͍Ζ͍ΖָͰ͢ w Ϛωʔδυͳ,OBUJWFʹίϯςφ࡞ͬͯஔ͚ͩ͘ w ূ໌ॻɺεέʔϧඞཁͳػೳ͓·͔ͤ w ৽͍͠ΞϓϦ৽ػೳ͚ͩͤͯΈͯ
͓·͚ʢ࣮ྫʣ w γϯϓϧͳ8FCΞϓϦ େࡕͷۭ͖ԻָελδΦݕࡧ w ϑϩϯτͱόοΫ ελδΦݕࡧ෦ ผͷ$MPVE3VO w
3&45"1*Ͱଓ w ϚΠΫϩαʔϏεͬΆ͍͜ͱ͕͔ͨͬͨ͠ w ࠓޙչ͍ͯ͠Δʢແཧʹͪ͗Δͱ͠ΜͲ͍ʣ w $*$%ɺϞχλϦϯάඋ w <&3303>Ͱͻ͔͚ͬͯΞϥʔτ
$MPVE3VO͔Θ͍͍Α͓͡͞Μ
c a d
Ξϯέʔτͷ͝ڠྗΛ͓Ͷ͕͍͠·͢