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 Tournament
Search
did0es
February 07, 2020
Technology
0
300
天下一 静的サイトホスティング 武道会 / World Static Site Hosting Tournament
did0es
February 07, 2020
Tweet
Share
More Decks by did0es
See All by did0es
5分でわかるPreactのVDOMで作るWebエディタ
shuta13
0
78
TailwindCSSでUIライブラリを作る際のハマりどころ
shuta13
0
330
codemodとうまく付き合うには
shuta13
0
610
プライベートクラウドのコンソール画面をNext.jsのApp Routerでフルリプレイスした話
shuta13
4
800
CyberAgent Developer Conference(CADC) 2023 LP開発の舞台裏
shuta13
0
130
Turborepo Code Generationによる、サイバーエージェントグループのフロントエンド開発の効率化
shuta13
4
2.1k
CADC 2023 LPにおけるライブ配信の裏側 | Momento Meetup #3
shuta13
0
100
Technologies for developing editors / Webエディタ開発を支える技術
shuta13
1
650
keyframes of Vue&TSX with CSS in JS
shuta13
1
770
Other Decks in Technology
See All in Technology
How to Think Like a Performance Engineer
csswizardry
4
590
MySQLのロックの種類とその競合
yoku0825
6
1.6k
AWS IAMのアンチパターン/AWSが考える最低権限実現へのアプローチ概略(JAWS-UG朝会#59資料改修20分版)
htan
0
330
頼られるのが大好きな 皆さんへ - 支援相手との期待の合わせ方、突き放し方 -/For_people_who_like_to_be_relied_on
naitosatoshi
1
290
Flutter研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
160
AWSで”最小権限の原則”を実現するための考え方 /20240722-ssmjp-aws-least-privilege
opelab
10
4.3k
【基調講演】変える、今ここから ― IoTとAIで紡ぐ未来
soracom
PRO
0
310
Docker互換のセキュアなコンテナ実行環境「Podman」超入門
devops_vtj
6
3.2k
AWSでRAGを作る法方
sonoda_mj
1
140
さらに高品質・高速化を目指すAI時代のテスト設計支援と、めざす先 / AI Test Lab vol.1
shift_evolve
0
190
LLMアプリケーションの評価の実践と課題 ~PharmaXにおける今後の展望~
pharma_x_tech
2
160
開発と事業を繋ぐ!SREのオブザーバビリティ戦略 ~ Developers Summit 2024 Summer ~
leveragestech
0
620
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
15
4.9k
Optimizing for Happiness
mojombo
373
69k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
26
2.1k
How GitHub (no longer) Works
holman
305
140k
Git: the NoSQL Database
bkeepers
PRO
423
64k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.9k
GraphQLの誤解/rethinking-graphql
sonatard
59
9.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
26
1.6k
Build your cross-platform service in a week with App Engine
jlugia
227
17k
The Power of CSS Pseudo Elements
geoffreycrofte
64
5.2k
Statistics for Hackers
jakevdp
792
220k
Designing for humans not robots
tammielis
247
25k
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Ҏ֎Ͱ৭ʑࢼͯ͠ΈͯԼ͍͞
͓ΘΓ