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
天下一 静的サイトホスティング 武道会 / World Static Site Hosting...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
did0es
February 07, 2020
Technology
0
390
天下一 静的サイトホスティング 武道会 / World Static Site Hosting Tournament
did0es
February 07, 2020
Tweet
Share
More Decks by did0es
See All by did0es
うわっ...私のSwagger、古すぎ...?grpc-gateway向けのSwaggerと向き合う
shuta13
0
120
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログのリリースサイクルを高速化する
shuta13
3
320
歴代のWeb Speed Hackathonの出題から考えるデグレしないパフォーマンス改善
shuta13
8
770
なぜクラウドサービスで Web コンソールを提供するのか
shuta13
4
2.4k
5分でわかるPreactのVDOMで作るWebエディタ
shuta13
0
240
TailwindCSSでUIライブラリを作る際のハマりどころ
shuta13
0
780
codemodとうまく付き合うには
shuta13
0
2.8k
プライベートクラウドのコンソール画面をNext.jsのApp Routerでフルリプレイスした話
shuta13
4
970
CyberAgent Developer Conference(CADC) 2023 LP開発の舞台裏
shuta13
0
280
Other Decks in Technology
See All in Technology
マルチロールEMが実践する「組織のレジリエンス」を高めるための組織構造と人材配置戦略
coconala_engineer
2
130
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
95k
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
22k
Master Dataグループ紹介資料
sansan33
PRO
1
4.4k
作るべきものと向き合う - ecspresso 8年間の開発史から学ぶ技術選定 / 技術選定con findy 2026
fujiwara3
6
1.7k
dbt meetup #19 『dbtを『なんとなく動かす』を卒業します』
tiltmax3
0
150
どこで打鍵するのが良い? IaCの実行基盤選定について
nrinetcom
PRO
2
110
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
44k
AIエージェントで変わる開発プロセス ― レビューボトルネックからの脱却
lycorptech_jp
PRO
2
840
Bill One 開発エンジニア 紹介資料
sansan33
PRO
5
18k
AWS Bedrock Guardrails / 機密情報の入力・出力をブロックする — Blocking Sensitive Information Input/Output
kazuhitonakayama
2
190
DX Improvement at Scale
ntk1000
2
110
Featured
See All Featured
Test your architecture with Archunit
thirion
1
2.2k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
210
Code Review Best Practice
trishagee
74
20k
Code Reviewing Like a Champion
maltzj
528
40k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
So, you think you're a good person
axbom
PRO
2
1.9k
A designer walks into a library…
pauljervisheath
210
24k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
140
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
120
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Transcript
ఱԼҰ੩తαΠτϗεςΟϯάಓձ UBNCPVSJOFJOD.FFU6Q גࣜձࣾλϯόϦϯΤϯδχΞΞϧόΠτ ฏҪඔଠ TIVUB
XIPBNJ ฏҪඔଠ TIVUB ͬͯΔ8FCϑϩϯτΤϯυΤϯδχΞɾσβΠφʔɾେֶੜ EJEFTNF!EJEFT
͜͏͍͏͜ͱͬͯ·͢ ɾ1PEDBTU։ൃ ɾ4MBDL#PU։ൃ ɾ8FCدΓͷҊ݅ॾʑʜ
ࠓ͢͜ͱ
ͱ͋Δ-5ͷϦεϖΫτΛ͍͖ͬͯ·͢ ͱ͋Δ-5 IUUQTTQFBLFSEFDLDPNQDI@KQXPSMEEFWTFSWFSUPVSOBNFOU
ఱԼҰ੩తαΠτϗεςΟϯάಓձ
ࢀՃࢿ֨ ੩తαΠτΛϗεςΟϯάͰ͖Δ
બखೖ
/P ;FJU/PX
/P (PPHMF"QQ&OHJOF
/P /FUMJGZ
/P 'JSFCBTF)PTUJOH
ิ "844 (PPHMF$MPVE4UPSBHF ͷ͓ࡒ͕ා͍ͷͰ༧બམͪͰ͢
ධՁํ๏ ɾ$*$%ͷΈ͢͞ ɾઃఆ͢͠͞ ɾͦͷଞ ɾΘ͔Γ͢͞ ίϚϯυͷ͞ ɾ(JU)VC͔ΒσϓϩΠ ͦΕͧΕຬͷܭຬͰ͢ ɾͦͷଞ
ճઓઃఆ͢͠͞
̍ճઓϗεςΟϯάͷઃఆ͕ Γ͍͔͢Ͳ͏͔ͷൺֱͰ͢
/VYUKT /FYUKTͷαΠτΛ ϗεςΟϯάΛ͢ΔલఏͰ͖ͬͯ·͢
ͦΕͧΕϗεςΟϯάͯ͠Έͯ Θ͔Γ͢͞ɺखܰ͞Λಘʹ͍͖ͯ͠·͢
/P ;FJU/PX ɾ४උ ɾ(JU)VCͰϩάΠϯ$-*ͰϩάΠϯ $ yarn global add $ now
άϩʔόϧԚછຊʹਃ͠༁ͳ͍
/P ;FJU/PX ɾ/FYUKT ɾOPXͬͯଧ͚ͭͩʂരʂ $ now ɾΑ͔ͬͨͶ
/P ;FJU/PX ɾ/VYUKT ɾOPXKTPOʹઃఆ͕ඞཁ W ɾ͋ͱOVYUΛJHOPSFOPXͬͯଧ͚ͭͩʂരʂ
/P ;FJU/PX ɾOPXͬͯଧ͚ͭͩͰ͍͍ ɾจࣈͳͷͰ͍֮͑͢ɺ ɾ ΄΅ θϩίϯϑΟά ɾͦ͏ͩͶɺ ɾ߹ܭ
/P (PPHMF"QQ&OHJOF ɾ४උ ɾ($1ʹϩάΠϯ ొ 4%,Πϯετʔϧ ɾ4%,μϯϩʔυͯ͠JOTUBMMTIΛ࣮ߦ ɾΊΜͲ͍͚͘͞ͲؤுΔ
/P (PPHMF"QQ&OHJOF ɾ/FYUKT ɾ("&ͰϓϩδΣΫτ࡞Δɺ*%ϝϞΔ $ gcloud init ɾJOJUɺϓϩδΣΫτ*%Λબ
/P (PPHMF"QQ&OHJOF ɾ/FYUKT ɾBQQZBNMΛ࡞
/P (PPHMF"QQ&OHJOF ɾ/FYUKT ɾOQNTDSJQUTͷOFYUTUBSUʹQ͚ͭΔ
/P (PPHMF"QQ&OHJOF ɾ/FYUKT ɾσϓϩΠ $ yarn build && gcloud app
deploy
/P (PPHMF"QQ&OHJOF ɾ/VYUKT ɾ("&ͰϓϩδΣΫτ࡞Δɺ*%ϝϞΔ $ gcloud init ɾJOJUɺϓϩδΣΫτ*%Λબ
/P (PPHMF"QQ&OHJOF ɾ/VYUKT ɾBQQZBNMΛ࡞
/P (PPHMF"QQ&OHJOF ɾ/VYUKT ɾσϓϩΠ $ gcloud app deploy
/P (PPHMF"QQ&OHJOF ɾHDMPVEೖΕΔͷ͕ͪΐͬͱΊΜͲ͍͘͞ ɾೖΕΕޙEPDT௨Γ ɾίϯϑΟάॻ͔ͳ͍ͱ͍͚ͳ͍ ɾ߹ܭ ɾͱΓ͋͑ͣ ɾ·͋ςϯϓϨʔτ͋Δ͍͔ͬ͠ʂ
/P /FUMJGZ ɾ४උ ɾ(JU)VCͰϩάΠϯ
/P /FUMJGZ ɾ/FYUKT ɾOQNTDSJQUTʹFYQPSUΛՃ ɾOVYUHFOFSBUFΈ͍ͨͳίϚϯυͷͣ
/P /FUMJGZ ɾ/FYUKT ɾޙ/FUMJGZଆͷઃఆΛ(6*Ͱϙνϙν
/P /FUMJGZ ɾ/VYUKT ɾ/FUMJGZଆͷઃఆΛ(6*Ͱϙνϙν
/P /FUMJGZ $ yarn global add netlify-cli ɾ༨ஊ ɾOPXΈ͍ͨʹ$-*ͰͰ͖Δɺ͠·ͤΜ͕ʜ $
netlify deploy -d dist # nuxt
/P /FUMJGZ ɾ(6*͕Θ͔Γ͍͢ɺ$-*͠Γ·Μ ɾ͍ɺ ɾ ΄΅ θϩίϯϑΟάOFUMJGZUPNMʹॻ࣌͋͘Δ ɾͦ͏ͩͶɺ ɾ߹ܭ
/P 'JSFCBTF)PTUJOH ɾ४උ ɾ(PPHMFͰϩάΠϯ$-*ͰϩάΠϯ $ yarn global add firebase-tools $
firebase login άϩʔόϧԚછ͜Μʹͪʂ
/P 'JSFCBTF)PTUJOH ɾ/FYUKT ɾެࣜFYBNQMFΛ͏ͷ͕Ұ൪खͬऔΓૣ͍ $ yarn create next-app ―example with-firebase-hosting
<hoge> $ yarn predeploy && yarn deploy ɾσϓϩΠ ɾطଘͷͷΛվम͢Δͱ͖ؤுΓ͕ඞཁ
/P 'JSFCBTF)PTUJOH ɾ/VYUKT $ firebase init ɾJOJU ɾEJTUΛࢦఆ $ yarn
build && yarn generate ɾEJTUͳ͔ͬͨΒੜ
/P 'JSFCBTF)PTUJOH ɾ/VYUKT $ firebase deploy ɾσϓϩΠ ɾOPXͷͪΐͬͱख͔͔ؒΔ൛
/P 'JSFCBTF)PTUJOH ɾOPXΈ͍ͨɻͰίϚϯυ͍ ɾ͏ʔΜɺ ɾ)PTUJOHͷΈͰ݁͠ʹ͍͘߹ଟ͍ ɾ/FYUKTͰ'JSFCBTF'VODUJPOTཁΔ ɾ߹ܭ ɾ·͋ςϯϓϨʔτ͋Δ͍͔ͬ͠ʂ
ճઓ$*$%ͷΈ͢͞
̎ճઓ$*$%ΛύοͱΊΔ͔Ͱ͢
ΈΜͳʙ
ίʔυཧʹԿ͍ͬͯ·͔͢ʁ
(JU)VCͰ͢ΑͶʁ
(JU)VCܦ༝Ͱ$*$%ΛΉ ྲྀΕͰ͍͖·͢
લ४උ ɾ༻πʔϧ(JU)VC"DUJPOT ɾඞཁʹͳͬͨΒ͏ɺZBNMॻ͘ ɾ$*ͰΔ͜ͱ ɾͱΓ͋͑ͣࠓճςετΛΒͤΔ ɾ$%ͰΔ͜ͱ ɾNBTUFSʹQVTI$*ύεͰσϓϩΠ
લ४උ ɾ(JU)VC"DUJPOTʹ͍ͭͯ ɾ6CVOUVMBUFTUίϯςφΛ͏ ɾ/PEFWYΛ͏ ɾ͍ͷͰ͜͜ΒΜͷهड़ը૾͔Βল͍ͯ·͢
ਐΊํ ɾ/FYUKT /VYUKTͰ$*$%Ή ɾઃఆͷΘ͔Γ͢͞ɺख͕ܰ͞ධՁର
/P ;FJU/PX ɾ$*$%४උ ɾ"DUJPOT͍͍͚ͬͯͲҧ͏Γํ ɾΛ͠Α͏ͱ͚ͨ͠Ͳ$%Ίͯ$*Ίͳ͍ ɾͳͷͰ"DUJPOT͏ ɾ/PXͰUPLFOऔಘ͠ͱ͘
/P ;FJU/PX ɾ/VYUKT ɾ;FJU/PX%FQMPZNFOU͕Կނ͔ྃ͠ͳ͍ ɾॿ͚ͯʢٽʣ
/P ;FJU/PX ɾ/FYUKT ɾͱΓ͋͑ͣZBNMॻ͘ɺͰ͖Δɺಈ͘
/P ;FJU/PX ɾ༨ஊ$% ɾEBTICPBSE͔Β(6*ϙνϙνઃఆՄ
/P ;FJU/PX ɾ"DUJPOTࣗମ;FJU/PX%FQMPZNFOU͚ͩͰࡁΉ ɾ$%(6*ͰҰԠઃఆͰ͖Δ ɾؤுͬͯཉ͍͠ͷͰ͋͛Δ ɾ߹ܭ ɾͨͩɺ/VYUKT͕࠷৽ͷ%FQMPZNFOUͰಈ͔ͳ͍
/P (PPHMF"QQ&OHJOF ɾ$*$%४උ ɾ"DUJPOT͍·͢ ɾΒ͔ͯ͠"DUJPOTͷఱҪ͕Έ͑ͨͷͰखॱ͚ͩʜ
/P (PPHMF"QQ&OHJOF ɾ/VYUKT ɾͱΓ͋͑ͣZBNMॻ͘ɺಈ͍ͯ΄͍͠
/P (PPHMF"QQ&OHJOF ɾ/FYUKT ɾͱΓ͋͑ͣZBNMॻ͘ɺಈ͍ͯ΄͍͠
/P (PPHMF"QQ&OHJOF ɾ͏ʔΜɺ ɾHDMPVETFSWJDFLFZKTPOͷѻ͍͕͍͠ ɾ߹ܭ
/P /FUMJGZ ɾ$*$%४උ ɾ"DUJPOT͍͍͚ͬͯͲҧ͏Γํ
/P /FUMJGZ ɾ$* ɾϏϧυίϚϯυʹZBSOUFTUՃ
/P /FUMJGZ ɾUFTUͪΌΜͱQBTTͨ͠ΒσϓϩΠͰ͖ͪΌ͏
/P /FUMJGZ ɾ$% ɾ(6*ϙνϙνͬͯऴΘΓ
/P /FUMJGZ ɾָɺ͋͛ͪΌ͏ ɾ͜ͷఔͳΒγϟοͬͯ(6*ૢ࡞ͰΊΔ ɾͬͺΓ͠ͱ͘ ɾMPHͱ͔ϫʔΫϑϩʔͷݟ࣮͢͞༻ੑՃຯ͢Δͱ ɾ߹ܭ
/P 'JSFCBTF)PTUJOH ɾ$*$%४උ ɾ"DUJPOT͍·͢
/P 'JSFCBTF)PTUJOH ɾ/VYUKT ɾͱΓ͋͑ͣZBNMॻ͘ɺͰ͖Δɺಈ͘
/P 'JSFCBTF)PTUJOH ɾ/FYUKT ɾͱΓ͋͑ͣZBNMॻ͘ɺͰ͖Δɺಈ͘
/P 'JSFCBTF)PTUJOH ɾ"DUJPOTϩʔΧϧͰΔ͜ͱͦͷ··ΒͤΔ ɾͪΌΜͱಈ͍ͯҒ͍ɺ ɾ߹ܭ
ճઓͦͷଞ
̏ճઓͰ͕͍͍Ͷ͏Ε͍͠Ͷ ͱࢥ͏ͱ͜ΖΛڍ͍͖͛ͯ·͢
/P ;FJU/PX ɾͦΕͦ͏ɺ ɾ/FYUKTͱͱͯ૬ੑ͕͍͍Ͱ͢ ɾׂͱ͏Ε͍͠ɺ ɾແྉϓϥϯͳΒແྉ ɾ߹ܭ
/P (PPHMF"QQ&OHJOF ɾͦ͏ͩͶɺ ɾελϯμʔυͳΒແྉͰ৭ʑͰ͖Δ ɾ(PPHMF͞ΜͰ͢ ɾ/PEF͕Wͱ͔Ͱ҆ఆ Β͍͠ ࠓճW ɾ߹ܭ
/P /FUMJGZ ɾ'PSNT ɾ੩తαΠτͰ͓͍߹ΘͤϑΥʔϜͰ͖ͪΌ͏ ɾ͍͢͝ɺ ɾ߹ܭ
/P 'JSFCBTF)PTUJOH ɾैྔ՝ۚͳͷͰ·͋ɺ͏ΜɺΈ͍ͨͳײ͡ ɾͳΜ͔/FUMJGZͱ͔ΑΓؾ࣋ͪૣ͍ ɾͦ͏ͩͶɺ ɾ(PPHMF͞ΜͰ͢ ɾ߹ܭ
݁Ռൃද
/FUMJGZ ;FJU/PX 'JSFCBTF)PTUJOH (PPHMF"QQ&OHJOF
ͱ͍͏͜ͱͰ
ఱԼҰ੩తαΠτϗεςΟϯάಓձ
༏উ/FUMJGZͰ͢
·ͱΊ ɾଞʹ͜Ε͍͍ͧʂ͑ʂʂΈ͍ͨͳͷ͋ͬͨΒ ɹڭ͑ͯԼ͍͞ɺͱ͍͏͔ୈճ։࠵͍ͯͩ͘͠͞ ɾࠓճͷ༏উ/FUMJGZʹܾఆ ɾ͍͢͞ɺػೳͷଟ͞తʹྑ͔ͬͨ ɾ/FYUKT /VYUKTҎ֎Ͱ৭ʑࢼͯ͠ΈͯԼ͍͞
͓ΘΓ