個人サイトを完全無料で運用できる理由 —— Cloudflare Pages と GitHub Actions
このサイト(nikinakamura.com)は静的書き出し(=完成済みファイルとして出力したもの)を Cloudflare Pages(クラウドフレア・ページズ)に置き、main への push(=変更の反映)のたびに GitHub Actions(ギットハブ・アクションズ)が自動で作り直している。どちらも個人サイトでは使い切れない無料枠があり、運用費は0円のままである。
無料で成り立っている部品
Cloudflare Pages(ホスティング=サイトを世界に公開する置き場)は静的ファイルを Cloudflare の世界中のネットワークから配信する。無料プランは月500デプロイ(=公開反映の回数)まで使える(Cloudflare 公式)。GitHub Actions(自動作業ロボット)は公開リポジトリ(=誰でも見られるコード置き場)+標準ランナーであれば無料で使える(GitHub 公式)。push のたびにビルド(=公開用に組み立てる処理)を実行し、結果を送り込む。Cloudflare D1(=編集可能なノートやコメント用の小さなデータベース)は、保存5GB・読み込み500万行/日・書き込み10万行/日まで無料である(Cloudflare 公式)。これは個人サイトの通信量をはるかに上回る余裕である。
そもそも、なぜ公開が無料なのか
静的ファイルの配信は安い。Cloudflare はすでに世界規模のCDN(=Content Delivery Network、利用者の近くにファイルを置いて速く届けるキャッシュ用サーバー群)を運用しているため、自分のファイルを載せる追加コストはほぼゼロである。無料枠は入口(ファネル)である。まず使ってもらい、規模拡大や上位機能・法人プランで後から課金してもらう狙いであり、これはフリーミアム(=基本無料+一部有料の商売の型)と呼ばれる。静的サイトには常時動かすサーバーが要らない。アクセスとアクセスの間に動き続けて課金される対象がそもそも存在しない。
出てきた専門語の整理
ティア(tier)とはプランの段階(無料/有料)を指す。無料ティアは、使用量の上限つきで費用ゼロの帯である。config(コンフィグ)とはツールの動き方を指定する設定ファイルであり、例としてnext.config.mjsやwrangler.tomlがある。wrangler(ラングラー)とは Cloudflare のコマンドライン道具(=文字で命令する操作ツール)で、Pages・Workers・D1 の公開や管理に使う。.mjsとは ES Module(=今どきの import/export というコード部品の出し入れ方式)で書いた JavaScript ファイルを指し、先頭のmがモジュール(部品)であることを示す。
出典・参考
関連ノート
- Agentic Commerce — ACP and Visibility into Being 'Bought by AI'
- browser-to-api — a Browserbase skill that turns a site into OpenAPI from a CDP trace
- Safe tenant-scoped writes to a cloud database — connection, authentication and RLS in one go
- Cloudflare Wrangler and Pages Functions — the deployment tool and the Functions bundle
- Introduction to the Digital Architect (00) — the reality of the profession and the big picture of an original textbook series
- The textbook for becoming a digital architect — table of contents (learning roadmap)