Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CloudflareでNext.js 2025年夏
Search
Ryu
August 26, 2025
Programming
23
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CloudflareでNext.js 2025年夏
Cloudflare Workers Tech Talks in Niigata #1
で発表した資料です。
Ryu
August 26, 2025
More Decks by Ryu
See All by Ryu
自作JavaScriptランタイムを作るための5分レシピ
ryuapp
0
29
Other Decks in Programming
See All in Programming
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
270
Event is what happens
moro
2
780
複雑なUIコンポーネントとの ⻑い付き合い⽅:波及するバグからテスト戦略を経て、安全な再設計へ
mixplace
0
410
APNsからLive Activityを開始する話
yumnumm
0
170
R8 の設定見直しでアプリサイズ削減
andpad
0
220
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
150
The Rails Doctrine Decade
koic
2
590
ジョジョの世界をXRで再現する
mofurune
0
160
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
180
Agents on Rails - Rails at Scale 2026
irinanazarova
0
560
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
170
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
1
1.9k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
280
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
450
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
600
Optimizing for Happiness
mojombo
378
71k
Writing Fast Ruby
sferik
630
63k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
450
Odyssey Design
rkendrick25
PRO
2
870
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
460
Transcript
CloudflareでNext.js 2025年夏 Cloudflare Workers Tech Talks in Niigata #1
自己紹介 Ryu(@ryuapp) ソフトウェアエンジニア at 株式会社モニクル • GitHub: @ryuapp • Website:
https://ryu.app
話すこと CloudflareでNext.jsを動かす方法について知ろう • Next.jsとは(軽く) • CloudflareスタックでのNext.jsの動かし方4選 Next.js on Cloudflareを触っている感想を交えつつお話しします ※デモは含みません
Next.jsとは • Vercelが開発しているReactのメタフレームワーク • フロントエンドとバックエンドを両方開発できる フルスタックなフレームワーク • ゼロコンフィグで簡単にセットアップできるのが魅力 • Webフレームワークの中で人気No.1
(GitHubにあるフレームワークの中で1番スターを持ってる)
State of JavaScript 2024: Meta Frameworks https://2024.stateofjs.com/en-US/libraries/meta-frameworks/
多くの開発者は Next.jsを使いたい ↓ CloudflareでもNext.jsを使いたい
CloudflareでNext.jsを動かす4選
1. OpenNext
OpenNextとは • Next.jsを異なるプラットフォーム(Vercel以外)で 動かすためのアダプター(デプロイツール) • 現状一番推奨されているやり方 • AWS、Cloudflare、Netlifyアダプターが存在 • SSTと各ベンダーのエンジニアがアダプター開発している(AWS以外)
https://opennext.js.org/
OpenNextの良いところ • Cloudflare WorkersでNext.jsを動かせる! ◦ Vercelの場合、商用利用は 20ドル~ ◦ Workersならバンドルサイズの制限で有料プランに入っても 5ドル~
◦ 個人開発したい人は財布にやさしいのでおすすめ • Next.jsのキャッシュ管理をクラウドに載せられる ◦ CloudflareのD1、KV、R2、Durable Objectsを使用している ◦ Next.jsを複数インスタンスでセルフホストする場合、 自前で設定が必要になるが、その設定が必要なくなる
OpenNextの課題感 • 最新機能、バージョンへの追従にラグ ◦ Vercel以外のベンダーが開発しているので仕方がない • 開発モードとビルド後の差分がある ◦ OpenNextはビルド後の生成物にパッチを当てている ◦
実体験、Wranglerをアップデートしたら壊れてしまった (OpenNextがv0) ◦ CIにe2eテストとかはあった方がいいかも • エコシステムがついてこない ◦ Next.jsの機能に依存しているライブラリが一部動かない (とはいえ、まあほぼ動く ) ◦ @sentry/nextjsとか
2. @cloudflare/next-on-pages
@cloudflare/next-on-pagesとは • Cloudflare PagesでNext.jsを構築するためのCLI • OpenNextが作られる前はこれを使っているケースが多かった • 現在はOpenNextの使用が推奨されるので、 新規採用するメリットはない https://github.com/cloudflare/next-on-pages
余談: @cloudflare/next-on-pagesはなぜPages? 最初からWorkersで良かったのでは? • Cloudflare WorkersのStatic Assetsが当時なかった ◦ next-on-pagesは2023年9月頃登場?【要出典】 ◦
Static Assetsは2024年9月登場(Builder Day 2024) ◦ Workersでバンドルすると、 フロントエンド側だけでバンドルサイズが上限に到達してしまう ◦ 当時は無料枠だと上限が 1MB(2024年10月に3MBに引き上げ)
3. Static Exports
Static Exportsとは • Next.jsを静的サイトとしてビルドする手段 • WorkersのStatic Assetsを使ってデプロイできる • SSG/SPA用に丁度いいやり方 https://nextjs.org/docs/app/guides/static-exports
Static Exportsの良いところ • フロントエンドだけになるので、どこでも動かせる ◦ バックエンドはWorkersでHonoでもなんでも良しなに
Static Exportsの課題感 • フルスタックにNext.jsを使えなくなる ◦ SSRできない • Next.jsの機能が一部しか使えない ◦ ServerActions、Middlewareなどが使えない
◦ https://nextjs.org/docs/pages/guides/static-exports#supported-features-1 OpenNextを使う必要がない人向け
4. Cloudflare Containers
Cloudflare Containersとは • Cloudflareが提供するコンテナ基盤(オープンベータ) • 類似サービスはGoogle CloudのCloud Runなど • Workersで動かすことができなかったアプリも動かせるようになった
紹介ブログ https://blog.cloudflare.com/cloudflare-containers-coming-2025/ ドキュメント https://developers.cloudflare.com/containers/
Cloudflare Containersの課題感 • Workersに課金が必要(月5ドル) ◦ 検証のため気軽に試したい • レスポンス速度が遅い ◦ フロントエンド用のサーバーには現状厳しい
• コールドスタートが長い(Next.jsの問題) Next.jsをtoC向けにデプロイしたいなら向いていない Workersで動かないアプリを動かすための エスケープハッチとして使うのが良さそう
Next.js on Cloudflare 総評 • OpenNextを使って Workersにデプロイするのが最善 • 静的サイトなら Static
Exportsするだけでいいね • 将来的にはCloudflare Containersによる運用も視野に入るかも • 新規開発なら@cloudflare/next-on-pagesではなくOpenNextを使おう
補足:今後の OpenNext • Deployment Adapters APIへの対応 https://github.com/vercel/next.js/discussions/77740 3月頃にNext.jsで発生した脆弱性への対応の批判を受けて提案されたAPI v16にアルファリリースされる予定 Postmortem
on Next.js Middleware bypass https://vercel.com/blog/postmortem-on-next-js-middleware-bypass
まとめ • CloudflareスタックでNext.jsを動かす方法を紹介 ◦ OpenNext ◦ @cloudflare/next-on-pages ◦ Static Exports
◦ Cloudflare Containers • OpenNextを使ってNext.jsをWorkersにデプロイするのがおすすめ ◦ 静的なサイトならStatic ExportsしてWorkersのStatic Assetsに載せよう • OpenNextの仕組み
みんなもNext.js使っていこうぜ!
Thank you