Cloudflare R2のバケットにCyberduckで接続してみた

Cloudflare R2のバケットにCyberduckで接続してみた

Cloudflare R2といえば、S3互換でありながらデータエグレス料金が無料なのがありがたいオブジェクトストレージサービスですね。(2024/05/21時点での情報です)

課金対象は

  • ストレージ
  • クラスA操作(状態を変更する)
  • クラスB操作(既存の状態を読み取る)

ですがそれぞれ以下の範囲では費用が発生しません。

  • ストレージ:10 GB / 月
  • クラスA操作(状態を変更する):100万 / 月
  • クラスB操作(既存の状態を読み取る):1000万 / 月

やってみたいこと

Cyberduckを使って、R2バケットに接続し、GUIで手軽にファイルをアップロードしたりダウンロードしたりするなど操作が手軽にできるようにしてみようと思います。
※ 今回の作業の実行環境(Cyberduckのインストール先)はWindows OSのPCとなります。

前提

以下の環境が既に整っていることを前提として進めます。

  • Cloudflareでアカウント登録を行っており、R2のバケットが作成可能な状態になっている。

手順

※ スクショに日本語表示のUIと英語表示のUIが混じってます、すみません。よしなに解釈してください。

1. Cloudflare R2のバケットを作成する

Cloudflareの管理画面よりR2のページにアクセスし、「バケットを作成する」ボタンをクリック。
2024-05-21_1.webp
適当な名前をつけて、Locationは自動を選択してバケットを作成します。
2024-04-23_2.webp

2024-04-23_3.webp

作成したら「設定」タブで「S3 API」のURLを確認して控えておきましょう。
2024-04-23_11.webp

2. 作成したバケットに接続する専用のR2 API Tokenを作成する

Cyberduckから接続できるようにAPI Tokenを作成しておきます。
R2のトップページに戻り右の「Manage R2 API Tokens」というリンクがあるのでクリックします。
※見当たらない場合はブラウザのウィンドウサイズを大きくすると表示されるかもしれません。
2024-04-23_4.webp

次の画面で「Create API token」をクリックします。
2024-04-23_5.webp

以下のような内容でAPIトークンを作成します。

  • トークン名:適当に分かりやすい名前
  • 権限:オブジェクト読み取りと書き込み
  • バケット指定:特定のバケットにのみ適用
    • 先ほど作ったバケットを選択
    • ※「権限」の選択肢によってはこの項目は表示されません。
  • TTL:今回はお試しでやったので1年としました。
  • クライアントIPアドレスフィルタリング:今回は特に指定しない

2024-04-23_6.webp

作成が完了すると以下のようにアクセスキーが生成され確認できます。
これは一度しか表示されないのでコピーしてどこかに控えておいてください。
2024-04-23_7.webp

Cloudflareでの作業は一旦これで完了です。

3. Cyberduckをインストールする

CyberduckをPCにインストールします。(インストール方法に特に指定はありません)
https://cyberduck.io/
のDownload(https://cyberduck.io/download/)へ遷移し。

Cyberduck for Windowsをダウンロードし、実行してインストーラを起動します。
2024-04-23_8.webp

インストールはインストーラの指示に従って進めばokです。

4. CyberduckからR2バケットに接続する

インストールしたCyberduckを起動します。
2024-04-23_9.webp

左上の「新規接続」をクリック
2024-04-23_10.webp

新規接続ウィンドウが表示されるので以下のように入力します。

項目 補足
一番上のプルダウン Amazon S3 Cloudflare R2がS3互換で同じプロトコルで接続するのでこれでok
サーバ 控えておいてS3 APIのURLの「https://」と末尾の「/cyberduck-sandbox」を省いた値を入力 「xxxxxx.r2.cloudflarestorage.com」的な値になるはず
アクセスキーID token作成時に控えておいたやつ
シークレットアクセスキー token作成時に控えておいたやつ
詳細設定 > Path cyberduck-sandbox バケット名

値に間違いがなければこれで接続できます。
2024-04-23_12.webp

以上で完了です。
試しに適当なファイルをドラッグアンドドロップしてみてください。ファイルがアップロードされ、CloudflareのR2の管理画面でも反映されていることが確認できるはずです。

もしこの接続をよく使うならブックマークに追加しておきましょう。
ブックマークアイコンをクリックし、
2024-04-23_13.webp
ウィンドウ左下の「+」ボタンをクリック。
2024-04-23_14.webp
「ニックネーム」だけ分かりやすい名前に修正してウィンドウを閉じれば完了です。
2024-04-23_15.webp

2024-04-23_16.webp

【余談】「ネットワークドライブ割り当て」はできるのか

ここまでできたらWindowsなら「ネットワークドライブ割り当て」もして楽にアクセスしたいですよね。
Mountain Duck」というCyberduckの姉妹ソフトを使えばサクッとできるっぽいですが、これは有料のソフトのようなので今回は断念しました。

次回はこの「ネットワークドライブ割り当て」までをRcloneを使って無料でできないか試したいなと思っています。

以上。

Share this post