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
68
自作ブログ 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
380
Firebase Remote Config for JavascriptをWebGLで使う
jerome_1010
0
40
Other Decks in Technology
See All in Technology
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
340
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
190
AWSを利用する上で知っておきたい名前解決のはなし(10分版)
nagisa53
10
3.2k
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
420
AIエージェントで90秒の広告動画を制作!台本・音声・映像・編集をつなぐAWS最新アーキテクチャの実践
nasuvitz
1
260
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
570
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
260
【実演版】カンファレンス登壇者・スタッフにこそ知ってほしいマイクの使い方 / 大吉祥寺.pm 2025
arthur1
1
890
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
180
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
710
現場で効くClaude Code ─ 最新動向と企業導入
takaakikakei
1
250
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
5
1.6k
Featured
See All Featured
Building an army of robots
kneath
306
46k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Designing Experiences People Love
moore
142
24k
4 Signs Your Business is Dying
shpigford
184
22k
A Modern Web Designer's Workflow
chriscoyier
696
190k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
It's Worth the Effort
3n
187
28k
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