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
JSだけでバックエンド環境構築、IaC、自動デプロイまでやってみた話
Search
kaidouji85
July 16, 2022
Technology
0
250
JSだけでバックエンド環境構築、IaC、自動デプロイまでやってみた話
kaidouji85
July 16, 2022
Tweet
Share
More Decks by kaidouji85
See All by kaidouji85
Serverless + Fargate構成で継続的デリバリーの速度を劇的に改善した話
kaidouji85
0
500
サーバーレスアーキテクチャこそ"ヘキサゴナルアーキテクチャ"
kaidouji85
0
41
サーバーレスでターンベース制のネット対戦ゲームを作った話
kaidouji85
0
310
CDKで構築したFargateのデプロイ時間を改善した話
kaidouji85
2
350
ブラウザゲームで視聴者参加型のゲーム配信
kaidouji85
0
140
サーバレスでネット対戦を作った話
kaidouji85
0
450
TWAでGoogle Playにアプリをリリースしてみた
kaidouji85
0
83
サーバレスでブルーグリーンデプロイしてみた
kaidouji85
0
110
three.jsにスプライトアニメーションが無いから自作した話
kaidouji85
0
300
Other Decks in Technology
See All in Technology
障害対応をちょっとずつよくしていくための 演習の作りかた
heleeen
0
160
VS CodeでAWSを操作しよう
smt7174
7
1.6k
Reducing Cross-Zone Egress at Spotify with Custom gRPC Load Balancing Recap
koh_naga
0
200
Cloud Native Java with Spring Boot (CNCF Aarhus, April 2024)
thomasvitale
1
170
Delivering Millions of Messages within seconds @ Duolingo
pelelgrino
0
350
チームでロジカルシンキングに改めて向き合っている話 〜学習環境と実践⽅法〜
sansantech
PRO
2
2.2k
MLOpsの「壁」を乗り越える、LINEヤフーの Data Quality as Code
lycorptech_jp
PRO
5
500
いつか使うかも貯金してたらめちゃめちゃ機能が増えてた話
riyaamemiya
0
110
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
140
TechFeed Experts Night#27 〜 フロントエンドフレームワーク最前線 (Svelte)
baseballyama
1
440
GrafanaMeetup_AmazonManagedGrafanaのアクセス制御機能とマルチテナント環境下でのアクセス制御について
daitak
0
120
Além do else! Categorizando Pokemóns com Pattern Matching no JavaScript
wmsbill
0
400
Featured
See All Featured
Scaling GitHub
holman
457
140k
Designing Experiences People Love
moore
136
23k
Code Review Best Practice
trishagee
55
15k
Building Effective Engineering Teams - LeadDev
addyosmani
28
1.8k
RailsConf 2023
tenderlove
4
540
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
The Pragmatic Product Professional
lauravandoore
25
5.8k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
Six Lessons from altMBA
skipperchong
21
3k
Being A Developer After 40
akosma
57
580k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.6k
Transcript
+4͚ͩͰόοΫΤϯυڥߏஙɺ *B$ɺࣗಈσϓϩΠ·ͰͬͯΈͨ Նͷ+BWB4DSJQUࡇΓ0OMJOF ༎հ
ࣗݾհ ɹ༎հ ϓϩάϥϚʔ +4େ͖ झຯͰωοτରઓήʔϜ ࡞ͬͯ·͢ (PPHMF1MBZʹ ݄ϦϦʔε༧ఆ
ˢ58"Ͱ࡞ͬͯ·͢
ΞδΣϯμ ࡞ͨ͠ήʔϜͷհ +4Ͱ*B$ 4FSWFSMFTT'SBNFXPSL αʔόϨεͷ 'BSHBUFXJUI"84$%, ·ͱΊ
ΞδΣϯμ ࡞ͨ͠ήʔϜͷհ +4Ͱ*B$ 4FSWFSMFTT'SBNFXPSL αʔόϨεͷ 'BSHBUFXJUI"84$%, ·ͱΊ
(ϒϨ# ݕࡧ
IUUQTZPVUVCFQ&T5(C[U'7
ήʔϜղઆ ࡞ʮػಈ۞ָ෦(ϒϨΠόʔόʔετʯͷωοτରઓ ಡΈ߹͍ੑ͕ߴ͍ɺಠࣗϧʔϧͷλʔϯ੍ότϧ (PPHMF1MBZʹͯઈࢍ৴த 5(4ʹΠϯσΟʔήʔϜબߟͰग़ల
αϯϓϧίʔυ ϑϩϯτ IUUQTHJUIVCDPNLBJEPVKJTUVEZUISFFKT αʔόαΠυ IUUQTHJUIVCDPNLBJEPVKJHCSBWFSCVSTUOFUXPSL ήʔϜίΞ ͍ΘΏΔυϝΠϯ
IUUQTHJUIVCDPNLBJEPVKJHCSBWFSCVSTUDPSF
ࠓ͞ͳ͍͜ͱ ωοτରઓͷαʔόߏɺΞʔΩςΫνϟʹ͍ͭͯ͠·ͤΜ ্هղઆผεϥΠυʹ·ͱΊͨͷͰɺͦͪΒΛ͝ࢀর͍ͩ͘͞ IUUQTTQFBLFSEFDLDPNLBJEPVKJTBCBSFTVEFOFUVUPEVJ[IBO XP[VPUVUBIVB
ΞδΣϯμ ࡞ͨ͠ήʔϜͷհ +4Ͱ*B$ 4FSWFSMFTT'SBNFXPSL 'BSHBUFXJUI"84$%, ·ͱΊ
*B$ͱ *OGSBTUSVDUVSFBT$PEFͷུশ ιʔείʔυ͑͋͞Εɺθϩ͔ΒΠϯϑϥΛࣗಈతʹߏஙͰ͖Δ ιʔείʔυΛมߋ͢Εɺ࣮ڥࣗಈతʹมߋͯ͘͠ΕΔ ίʔυ্ͰαʔόͷϝϞϦΛ.C.Cʹมߋ͢Εɺ*B$ͷ ίϚϯυϥΠϯΛ࣮ߦ͢Δ͚ͩͰ࣮ڥαʔόϝϞϦ.Cʹͯ͘͠ΕΔ ಉ͡ߏͷ৽͍͠ڥΛɺ߈Ͱ࡞Δ͜ͱ͕Ͱ͖Δ
+4Ͱͷ*B$ +4ʹ*B$πʔϧࢁ͋Δ͕ɺ(ϒϨΠόʔόʔετͰ 4FSWFSMFTT'SBNFXPSLɺ"84$%,Λ࠾༻ͨ͠ 4FSWFSMFTT'SBNFXPSLͱɺͦͷ໊ͷ௨ΓαʔόϨεઐͷ*B$ "84$%,ͱ"84ઐ༻ͷ*B$
ΞδΣϯμ ࡞ͨ͠ήʔϜͷհ +4Ͱ*B$ 4FSWFSMFTT'SBNFXPSL αʔόϨεͷ 'BSHBUFXJUI"84$%, ·ͱΊ
αʔόϨεͱ αʔόཧΛ΄ͱΜͲҙࣝͤͣʹɺϓϩάϥϜ։ൃ͚ͩʹूத͍͢͠ Έ FYQSFTT͕ಈ͘KTϑΝΠϧΛͨ͠ΒɺαʔϏεىಈɺԽɺϑΣΠϧ ΦʔόʔΛؚΊͯΑ͠ͳʹͬͯ͘ΕΔ "84-BNCEBɺ"[VSF'VODUJPOTɺ$MPVE'VODUJPOTͳͲ͕૬͢Δ
4FSWFSMFTT'SBNFXPSLͱ αʔόϨε։ൃπʔϧͷσϑΝΫτελϯμʔυ :".-ܗࣜͷઃఆϑΝΠϧ +4Ͱ։ൃ͢ΔελΠϧ ϓϥάΠϯ๛Ͱϊϋଟ͍ɺαʔόϨεքͷ3VCZPO3BJMT (ϒϨ#Ͱ4FSWFSMFTT'SBNFXPSL "84Λ࠾༻͕ͨ͠ɺ "84Ҏ֎ʹରԠ͍ͯ͠Δ
TFSWFSMFTTZNM 4FSWFSMFTT'SBNFXPSLͷઃఆϑΝΠϧ ֤छڥઃఆɺFYQSFTTͰ͍͏ͱ͜ΖͷϧʔςΟϯάઃఆΛهࡌ͢Δ ˣ͕۩ମྫ IUUQTHJUIVCDPNLBJEPVKJHCSBWFSCVSTUOFUXPSLCMPCEFWFMPQ QBDLBHFTCBDLFOEBQQTFSWFSMFTTZNM
None
আ"1*ͷઃఆ
আ"1*͕ݺΕͨ࣌ͷॲཧΛࢦఆ ͜ͷ߹ɺTSDEFMFUFVTFSKTͷ EFMFUF6TFS͕࣮ؔߦ͞ΕΔ
3FTU"1*ͷύεͱϝιου ͜ͷ߹IUUQT"1*ͷ63-Λ%&-&5&Ͱݺͼग़͢ͱ͍͏ҙຯ
TSDEFMFUFVTFSKT আ"1*͕ݺͼग़͞Εͨ࣌ͷॲཧΛఆٛͨ͠+4ɺ͍ΘΏΔϋϯυϥ ࡉ͔͍ͱ͜Ζҧ͏͕ɺFYQSFTTϧʔςΟϯάͷϋϯυϥͱߟ͑ํಉ͡ ϦΫΤετΛड͚औͬͨɺԿΒ͔ͷॲཧΛͯ͠ɺϦΫΤετΛฦ͢
None
ϦΫΤετύϥϝʔλ Ћ
Ϣʔβআॲཧ
Ϩεϙϯε
4FSWFSMFTT'SBNFXPSLΠϯετʔϧํ๏
σϓϩΠ
σϓϩΠิ ࣄલʹBXTDMJͳͲΛΠϯετʔϧͯ͠ɺBXTೝূઃఆΛྃͤ͞Δ͜ͱ TUBHFʹ͖ͳڥ໊ ཧ໊ ͕ࢦఆͰ͖Δ ڥ͕ଘࡏ͠ͳ͚Ε৽ن࡞ɺଘࡏ͢ΕطଘڥΛTFSWFSMFTTZNM ʹఆٛ͞Εͨ༰Ͱߋ৽͢Δ
ΞδΣϯμ ࡞ͨ͠ήʔϜͷհ +4Ͱ*B$ 4FSWFSMFTT'SBNFXPSL αʔόϨεͷ "84$%, ·ͱΊ
αʔόϨεͷ "84-BNCEBͳͲͷ'BTT4ΛͬͨαʔόϨεɺαʔόৗ࣌ىಈͷ Ϣʔεέʔεͱ૬ੑ͕ѱ͍ 'BB4ϛϦඵ୯ҐͰͷ՝ۚɺಉ࣌ؒ͡ͳΒ*BB4ΑΓׂߴ ͦͦ"84-BNCEB͔࣮͠ߦͰ͖ͳ͍ IUUQTEPDTBXTBNB[PODPNKB@KQMBNCEBMBUFTUEH HFUUJOHTUBSUFEMJNJUTIUNMGVODUJPODPO fi
HVSBUJPOEFQMPZNFOUBOE FYFDVUJPO
ࢀߟɹ&$WT-BNCEB࣌ؒ՝ۚ &$NMBSHF W$16ɺϝϞϦ( 64%࣌ؒ -BNCEB ϝϞϦ( 64%ϛϦඵ
64%࣌ؒ ಉ͡ϝϞϦͳΒɺ୯७ܭࢉͰ-BNCEBͷํ͕ഒ͘Β͍ߴ͍
ղܾࡦ ҎԼͷΑ͏ͳίϯςφϕʔεͷαʔϏεͰɺৗ࣌ىಈαʔόΛ༻ҙ͢Δ͜ͱ ʹͨ͠ "84"QQ3VOOFS "84$PQJMPU 'BSHBUFXJUI"84$%,
"84"QQ3VOOFS IFPSLVͷίϯςφ൛ɺڥߏஙҰ൪ָ ॊೈੑ࠷͘ɺ(ϒϨΠόʔόʔετͷཁ݅Λຬ͍ͨͯ͠ͳ͔ͬͨ
"84$PQJMPU ίϯςφઐ༻ͷ*B$ɺ$*$%ڥ͍ͭͯ͘Δ ؆୯ʹಋೖͰ͖ͯػೳ๛͕ͩɺͷஈ֊Ͱ"84ΞΧϯτݸ ʹ͖ͭɺڥ͔͠ߏஙͰ͖ͳ͍ DPQJMPU͕ࣗಈੜ͢Δίʔυ͕େɺࡶɺ࣮࣭όΠφϦ ຊ൪ɺςετͰผʑͷ"84ΞΧϯτʹ͢Εͳ͍͕ɺ (ϒϨΠόʔόʔετͰςετɺຊ൪ΛಉҰΞΧϯτʹߏங͍ͯͨ͠ ͨΊɺ༻్ʹ߹Θͳ͔ͬͨ
'BSHBUFXJUI"84$%, "84ڥઐ༻*B$ͷ"84$%,Ͱɺ'BSHBUFڥΛߏங͢Δ қߴΊ͕ͩɺ$MPVE'PSNBUJPOɺ5FSSBGPSNΑΓ؆୯ ϑ˓ʔβ$MPVE'PSNBUJPOɺ5FSSBGPSN ϥ˓Οοπ"84$%, ফڈ๏తʹ(ϒϨΠόʔόʔετͰ"84$%,Λબ
ΞδΣϯμ ࡞ͨ͠ήʔϜͷհ +4Ͱ*B$ 4FSWFSMFTT'SBNFXPSL αʔόϨεͷ 'BSHBUFXJUI"84$%, ·ͱΊ
'BSHBUFͱ "84͕ఏڙ͢ΔίϯςφՔಇڥ $BB4 %PDLFSΠϝʔδ͑͞1VTI͢ΕɺޙΑ͠ͳʹͬͯ͘ΕΔ ͔͠͠ɺॳظߏ݁ߏࠎ͕ંΕΔ
"84$%,ͱ "84$MPVE%FWFMPQNFOU,JUͷུশɺ+4ɺ54Ͱ"84ڥͷ*B$͕Ͱ͖Δ 71$ɺ'BSHBUFͪΖΜɺͦΕҎ֎ͷશ"84Ϧιʔεͷߏங͕Ͱ͖Δ "84͓͢͢Ίߏ͕ϥΠϒϥϦͱͯ͠·ͱ·͍ͬͯΔ
None
71$ߏϥΠϒϥϦ ";ɺωοτϫʔΫ$*%3ɺ/"5ήʔτΣΠͷݸΛࢦఆ͢Δ ͚ͩͰ71$͕؆୯ʹ࡞ΕΔ
None
'BSHBUFઃఆϥΠϒϥϦΛݺͼग़ͯ͠ɺ৭ʑΈ߹Θ͍ͤͯΔ
"84$%,Πϯετʔϧํ๏
σϓϩΠ
σϓϩΠิ ࣄલʹBXTDMJͳͲΛΠϯετʔϧͯ͠ɺBXTೝূઃఆΛྃͤ͞Δ͜ͱ ڥ໊+4ίʔυͷதͰࢦఆ͍ͯ͠ΔͷͰɺίϚϯυϥΠϯҾɺڥม ͳͲͰ֎෦ࢦఆͰ͖ΔΈΛࣗ࡞͢Δͱ͍͍ ڥ͕ଘࡏ͠ͳ͚Ε৽ن࡞ɺଘࡏ͢ΕطଘڥΛTFSWFSMFTTZNM ʹఆٛ͞Εͨ༰Ͱߋ৽͢Δ
༨ஊ"84$%,Λੵۃతʹ͏͖͔ "84$%,Λ͍͜ͳ͢ʹɺ"84ઃఆΛݟͯࣗͷҙਤ௨Γʹಈ͘ͷ͔ அͰ͖Δ͚ͩͷ͕ࣝඞཁ ˢϑϨʔϜϫʔΫɺαʔϏε͕෦తʹ͍ͬͯΔ͜ͱΛཧղ͢Δͷͱಉ͡ ༻్ʹ͋ͬͨϑϨʔϜϫʔΫɺαʔϏε͕͋ΔͳΒɺ "84$%,Λແཧͯ͠͏ඞཁͳ͍ɺ"84$%,࠷ޙͷखஈ
ΞδΣϯμ ࡞ͨ͠ήʔϜͷհ +4Ͱ*B$ 4FSWFSMFTT'SBNFXPSL αʔόϨεͷ 'BSHBUFXJUI"84$%, ·ͱΊ
·ͱΊ *B$ίʔυ͔ΒΠϯϑϥΛ৽ن࡞ɺߋ৽͢ΔΈͰ͋Δ αʔόʔϨεͷ*B$ͳΒɺ4FSWFSMFTT'SBNFXPSLΛ͓͏ "84$%,ͳΒͲΜͳߏͷ'BSHBUFͰݱ࣮తͳ࿑ྗͰ*B$Ͱ͖Δ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·͢