ターミナルから、R2 バケットとオブジェクトを直接管理します。CLI ツールでタスクを自動化し、オブジェクトを管理できます。
| ツール | 向いている用途 |
|---|---|
| Wrangler | 単一オブジェクトの操作と、最小限のセットアップでバケット設定を管理する場合 |
| rclone | 一括操作、移行、ディレクトリ同期 |
| AWS CLI | 既存の AWS ワークフローがある場合、または AWS CLI に慣れている場合 |
バケットは R2 上でオブジェクトを保存します。新しい R2 バケットを作成する手順は次のとおりです。
-
Cloudflare アカウントにログインします。
npx wrangler login -
my-bucketという名前のバケットを作成します。npx wrangler r2 bucket create my-bucket求められた場合は、バケットを作成するアカウントを選びます。
-
バケットが作成されたことを確認します。
npx wrangler r2 bucket list
-
Cloudflare ダッシュボードで R2 object storage を開きます。
Overview を開く ↗ -
Create bucket を選びます。
-
バケット名を入力します。
-
バケットの ロケーション と デフォルトのストレージクラス を選びます。
-
Create bucket を選びます。
S3 API を使う CLI ツール(AWS CLI、rclone)には、Access Key ID と Secret Access Key が必要です。Wrangler を使う場合は、この手順をスキップできます。
- Cloudflare ダッシュボードで R2 を開きます。
- Manage R2 API tokens を選びます。
- Create API token を選びます。
- Object Read & Write 権限を選び、アクセスするバケットを選びます。
- Create API Token を選びます。
- Access Key ID と Secret Access Key をコピーします。安全に保管してください。シークレットは再表示できません。
Wrangler は Cloudflare Workers の CLI です。Cloudflare アカウントに直接認証するため、API 認証情報は不要です。
-
Wrangler をインストールします。
npm i -D wrangleryarn add -D wranglerpnpm add -D wranglerbun add -d wrangler -
Cloudflare アカウントにログインします。
wrangler login
rclone は、一括アップロード、移行、ディレクトリ同期に適しています。
-
rclone をインストール ↗ します(バージョン 1.59 以降)。
-
新しいリモートを設定します。
rclone config -
nを選んで新しいリモートを作成します。 -
リモート名を
r2にします。 -
ストレージタイプとして Amazon S3 Compliant Storage Providers を選びます。
-
プロバイダーとして Cloudflare R2 を選びます。
-
AWS 認証情報を手動で入力するか、ランタイム環境から取得するかを選びます。
-
求められたら Access Key ID と Secret Access Key を入力します。
-
接続するリージョンを選びます(任意)。
-
S3 API エンドポイントを指定します。
AWS CLI は、カスタムエンドポイントを指定して R2 で使えます。
-
お使いの OS 向けに AWS CLI をインストール ↗ します。
-
認証情報を設定します。
aws configure -
求められたら、次を入力します。
- AWS Access Key ID: R2 の Access Key ID
- AWS Secret Access Key: R2 の Secret Access Key
- Default region name:
auto - Default output format:
json(または Enter でスキップ)
(任意)アップロード用のテストファイルを作成します。CLI コマンドを実行するディレクトリで、次のコマンドを実行します。
echo 'Hello, R2!' > myfile.txt# Upload myfile.txt to my-bucket
wrangler r2 object put my-bucket/myfile.txt --file ./myfile.txt
# Download myfile.txt and save it as downloaded.txt
wrangler r2 object get my-bucket/myfile.txt --file ./downloaded.txt利用できる操作は、Wrangler R2 コマンド を参照してください。
# Upload myfile.txt to my-bucket
rclone copy myfile.txt r2:my-bucket/
# Download myfile.txt from my-bucket to the current directory
rclone copy r2:my-bucket/myfile.txt .その他の設定オプションは、rclone のドキュメント を参照してください。
# Upload myfile.txt to my-bucket
aws s3 cp myfile.txt s3://my-bucket/ --endpoint-url https://<ACCOUNT_ID>.r2.cloudflarestorage.com
# Download myfile.txt from my-bucket to current directory
aws s3 cp s3://my-bucket/myfile.txt ./ --endpoint-url https://<ACCOUNT_ID>.r2.cloudflarestorage.com
# List all objects in my-bucket
aws s3 ls s3://my-bucket/ --endpoint-url https://<ACCOUNT_ID>.r2.cloudflarestorage.comその他の例は、AWS CLI のドキュメント を参照してください。