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
240
20200805 GCP Cloud Run
GCP Cloud Runで始める簡単モダンなコンテナアプリ開発
saramune
August 05, 2020
Tweet
Share
More Decks by saramune
See All by saramune
EKS Auto Modeなにそれおいしいの?
saramune
0
98
self-hosted runnersでAWSコスト削減?
saramune
0
110
業務効率向上としての分割キーボード
saramune
0
130
インフラ観点で見るセキュリティ〜4Cモデルに倣って〜
saramune
0
42
適材適所
saramune
1
86
ChatworkのSRE部って実は 半分くらいPlatform Engineering部かもしれない
saramune
0
560
週刊AWSキャッチアップ(2024/03/25週)
saramune
0
120
なんでもかんでもコンテナ化すればいいってもんでもないけど なんでもかんでもコンテナ化したらスッキリしました
saramune
2
360
ACKを活用して 使い捨てAWS検証環境を構築している話
saramune
0
1.1k
Other Decks in Technology
See All in Technology
ソフトウェアプロジェクトの成功率が上がらない原因-「社会価値を考える」ということ-
ytanaka5569
0
130
チームビルディング「脅威モデリング」ワークショップ
koheiyoshikawa
0
140
IAMのマニアックな話 2025 ~40分バージョン ~
nrinetcom
PRO
8
920
caching_sha2_passwordのはなし
boro1234
0
220
Engineering Managementのグローバルトレンド #emoasis / Engineering Management Global Trend
kyonmm
PRO
6
990
モノリスの認知負荷に立ち向かう、コードの所有者という思想と現実
kzkmaeda
0
110
DevOps文化を育むQA 〜カルチャーバブルを生み出す戦略〜 / 20250317 Atsushi Funahashi
shift_evolve
1
110
どっちの API SHOW?SharePoint 開発における SharePoint REST API Microsoft Graph API の違い / Which API show? Differences between Microsoft Graph API and SharePoint REST API
karamem0
0
110
Cloud Native PG 使ってみて気づいたことと最新機能の紹介 - 第52回PostgreSQLアンカンファレンス
seinoyu
2
200
パスキーでのログインを 実装してみよう!
hibiki_cube
0
670
ソフトウェア開発現代史: なぜ日本のソフトウェア開発は「滝」なのか?製造業の成功体験とのギャップ #jassttokyo
takabow
2
1.6k
ソフトウェア開発におけるインターフェイスという考え方 / PHPerKaigi 2025
k1low
9
3.9k
Featured
See All Featured
Docker and Python
trallard
44
3.3k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
Mobile First: as difficult as doing things right
swwweet
223
9.5k
Site-Speed That Sticks
csswizardry
4
450
RailsConf 2023
tenderlove
29
1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
22
2.6k
Unsuck your backbone
ammeep
670
57k
Writing Fast Ruby
sferik
628
61k
A Philosophy of Restraint
colly
203
16k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.5k
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
Ξϯέʔτͷ͝ڠྗΛ͓Ͷ͕͍͠·͢