Cloudflare R2
Page content
☁️ Cloudflare R2 × CLI完全手順(2026)
🧱 全体像(先に理解)
やることはこれだけ👇
① Wranglerインストール
② Cloudflareログイン
③ プロジェクト作成
④ R2バケット作成
⑤ 設定ファイル編集
⑥ デプロイ
🥇 STEP① Wranglerインストール
npm install -g wrangler
確認👇
wrangler --version
🔐 STEP② Cloudflareログイン
wrangler login
👉 ブラウザが開く → 許可
👉 成功するとCLIに戻る
📁 STEP③ プロジェクト作成
npm create cloudflare@latest my-r2-app
質問はこう答える👇
What would you like to start with?
→ Hello World Worker
Do you want to use TypeScript?
→ Yes
Do you want to deploy now?
→ No
フォルダ移動
cd my-r2-app
🪣 STEP④ R2バケット作成(CLI版)
wrangler r2 bucket create my-bucket
成功すると👇
Created bucket 'my-bucket'
確認
wrangler r2 bucket list
⚙️ STEP⑤ wrangler.toml設定(最重要)
プロジェクト内の
👉 wrangler.toml を開く
👇 追加
[[r2_buckets]]
binding = "MY_BUCKET"
bucket_name = "my-bucket"
💻 STEP⑥ コードを書く
src/index.ts を編集👇
export default {
async fetch(request, env) {
// 保存
await env.MY_BUCKET.put("hello.txt", "Hello R2")
// 取得
const object = await env.MY_BUCKET.get("hello.txt")
if (!object) {
return new Response("Not found", { status: 404 })
}
const text = await object.text()
return new Response(text)
}
}
🧪 STEP⑦ ローカル実行
wrangler dev
👉 表示されるURLにアクセス
👉 「Hello R2」なら成功
🚀 STEP⑧ デプロイ
wrangler deploy
👉 URLが出る
👉 本番公開完了
📦 STEP⑨ CLIでファイル操作(重要)
アップロード
wrangler r2 object put my-bucket/hello.txt --file ./hello.txt
ダウンロード
wrangler r2 object get my-bucket/hello.txt
削除
wrangler r2 object delete my-bucket/hello.txt
一覧
wrangler r2 object list my-bucket
⚠️ よくあるエラー
❌ bucket not found
👉 名前ミス
❌ binding undefined
👉 wrangler.toml設定忘れ
❌ Unauthorized
👉 loginしてない or 権限不足
🧠 プロがやる構成(重要)
Workers(API)
↓
R2(ファイル)
↓
CDN配信
+
D1(ユーザー情報)
👉 SaaS完成
🎯 最短コピペセット
npm install -g wrangler
wrangler login
npm create cloudflare@latest my-r2-app
cd my-r2-app
wrangler r2 bucket create my-bucket
wrangler dev
wrangler deploy
🚀 次にやると爆伸び
-
画像アップロードAPI
-
フロントから直接R2保存
-
署名付きURL(セキュア配信)
-
D1と連携(ユーザー管理)