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
自作ブログ with Cloudflare Pages
Search
Jerome_1010
June 15, 2022
Technology
0
71
自作ブログ with Cloudflare Pages
Cloudflare Pagesを使ってみた話
Jerome_1010
June 15, 2022
Tweet
Share
More Decks by Jerome_1010
See All by Jerome_1010
Age-Friendly Web UI
jerome_1010
0
20
三週間リモートワークしてわかった 仕事・生活でのtips / Tips for Remote Work with my 3weeks experience
jerome_1010
0
390
Firebase Remote Config for JavascriptをWebGLで使う
jerome_1010
0
41
Other Decks in Technology
See All in Technology
LLMアプリの地上戦開発計画と運用実践 / 2025.10.15 GPU UNITE 2025
smiyawaki0820
2
730
Click A, Buy B: Rethinking Conversion Attribution in ECommerce Recommendations
lycorptech_jp
PRO
0
110
WEBサービスを成り立たせるAWSサービス
takano0131
1
190
「最速」で Gemini CLI を使いこなそう! 〜Cloud Shell/Cloud Run の活用〜 / The Fastest Way to Master the Gemini CLI — with Cloud Shell and Cloud Run
aoto
PRO
0
140
JSConf JPのwebsiteをGatsbyからNext.jsに移行した話 - Next.jsの多言語静的サイトと課題
leko
1
110
OpenTelemetry が拡げる Gemini CLI の可観測性
phaya72
2
960
「改善」ってこれでいいんだっけ?
ukigmo_hiro
0
380
LLMプロダクトの信頼性を上げるには?LLM Observabilityによる、対話型音声AIアプリケーションの安定運用
ivry_presentationmaterials
0
730
会社を支える Pythonという言語戦略 ~なぜPythonを主要言語にしているのか?~
curekoshimizu
1
210
データ戦略部門 紹介資料
sansan33
PRO
1
3.8k
初めてのDatabricks Apps開発
taka_aki
1
230
サイバーエージェント流クラウドコスト削減施策「みんなで金塊堀太郎」
kurochan
4
2.2k
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
514
110k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
Making Projects Easy
brettharned
120
6.4k
4 Signs Your Business is Dying
shpigford
185
22k
Facilitating Awesome Meetings
lara
56
6.6k
Unsuck your backbone
ammeep
671
58k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
600
Agile that works and the tools we love
rasmusluckow
331
21k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Transcript
自作ブログ with Cloudflare Pages 2022/06/15 LT会
• 料理とゲームとドット絵が好き ◦ VALORANTにハマってます! ◦ ゲーム制作は最近サボり気味... • 最近の悩み: ◦ 歯軋りが強すぎて奥歯にヒビ
🦷 自己紹介 @Jerome_1010
そもそもなんで作ったのか
手札を増やしたかった
いろいろ触ったのでざっくり紹介
構成図 push publish build & deploy Cloudflare Pages GraphCMS CDN
fetch contents users
構成図 push publish build & deploy Cloudflare Pages GraphCMS CDN
fetch contents users
ブログ本体: Next.jsでSSG • 普通のSSGでOK • 本当はNuxt v3を使いたかったがSSGがまだExperimental • ReactやNext.jsを触ってみたかったのでヨシ!
テスト: vitest • viteを使ったテストフレームワーク • とにかく高速 ◦ watchの開発体験が良い • jestとほとんど同じ書き味で書ける
• ほぼ設定なし ◦ 元々viteで動かしているわけではないため viteの設定だけ追加が必要 ◦ ts-jestとか@types/jest、jest.config.jsとサヨナラ • In-source testingが書ける
CMS: GraphCMS • GraphQLでアクセスできるヘッドレスCMS • 個人〜小規模な利用なら無料の範囲で使える ◦ 3ユーザーまで無料で利用可 ◦ 100万回/月のAPIコールと
月間100GBのトラフィックまで無料
• build, deploy, hosting全部コレ ◦ インフラをほぼ気にしないで OK • CDNでホストされるので高速 •
analytics画面も提供してくれる build, deploy & hosting: Cloudflare Pages
使い方 1/3 1. githubリポジトリと連携
使い方 2/3 2. ビルドコマンドとディレクトリを指定
• 後はbranchをpushするだけ • mainにmergeやpush -> 本番デプロイ • その他のbranchをpush -> preview用ページがデプロイされる
◦ preview用のurlが作られる ◦ urlは <hash>.<project-name>.pages.dev で生成される ◦ <branch名>.<project-name>.pages.dev でもアクセスできる(エイリアスが貼られる ) • Cloudflare Accessによるアクセス制限も可能 ◦ preview画面はチームのみ閲覧可能にしたり 使い方
tips • 🚨カスタムドメインを使う場合はCloudflare DNSに寄せる必要がある ◦ サブドメインならCNAMEの登録のみでOK • 環境変数にtokenを含めればプライベートパッケージの読み込みも可能 • 🚨環境変数が平文で保存される
◦ secretを保存する枠は無い (workerにはある) • 🚨デフォのnodeバージョンが古い ◦ 環境変数でNODE_VERSIONとして指定してねとある ◦ が、.node-versionを読み込んでくれるのでそちらで指定した方が良さそう
• 無料ではビルドパイプラインは1つまで • 無料では500ビルド/月まで • ホストするサイト数、リクエスト数、帯域幅に一切制限なし(!!) • DNSの利用も無料 [参考] https://www.cloudflare.com/ja-jp/plans/#overview
https://www.cloudflare.com/ja-jp/plans/developer-platform/#overview 料金
感想 • SSGで済む場合Cloudflare Pagesは良い選択肢かも • 個人ブログなら正直CMSを使う必要はない ◦ マークダウンで記事書いて pushすれば良い •
CMSを導入する必要がある場合GraphCMSは良さそうだった • vitestの速さ、設定の簡単さは開発効率を上げられそう
今後やりたいこと • GraphCMSのスキーマからTSの型を生成する • UIライブラリなどの導入 • Cloudflare Workersを使ったSSRの導入
• Cloudflare PagesやVercelとの比較 https://zenn.dev/catnose99/scraps/6780379210136f • vitestとjestの速さ比較 https://zenn.dev/jay_es/articles/2021-12-22-vitest-comparison 参考資料
ありがとうございました!
構成図 push publish build & deploy Cloudflare Pages GraphCMS CDN
fetch contents users