2024-03-22T11:00:58.195Z
はじめに
タイトル通りです。設定をして移行しました。
移行作業みたいなのはおひとりさま運用をしてから一度もやっていないので体験しておいたほうが良いかな程度です。現状S3は毎月1円請求が来るだけですが、R2にしたら無料枠で収まるなと思ったのもあります。
移行手順
Cloudflare R2のbucketを作成
Backet nameを指定する程度でいいんじゃないですかね。
Backetの設定
Settings > Public access > Custom Domains にドメインを設定します。
今回はベータ機能のIncremental migrationを使ってみます。s3:Get*
とs3:List*
の権限のキーを作って設定します。
BacketのAPI Token作成
R2 Overviewの右側にあるManage R2 API Tokensから新しく作成します。
Incremental migrationで使うTokenもあると思います。
Pleromaの設定
old admin UIの Settings > Upload を開きます。設定項目は以下の5つです。
- Pleroma.Upload Base URL
- R2 BucketのCustom Domainsで設定したもの
例: https://example.com
- R2 BucketのCustom Domainsで設定したもの
- S3 Access key
- R2 BucketのAccess Key ID
- S3 Secret access ke
- R2 BucketのSecret Access Key
- S3 Host
- R2 BucketのS3 APIのホスト名
例: hogehoge.r2.cloudflarestorage.com
- R2 BucketのS3 APIのホスト名
- S3 Region
- R2では
auto
を指定すればよい
- R2では
- Pleroma.Uploaders.S3 Backet
- R2 Bucket名を指定する
既存のメディアのDNSをR2に向ける
S3 BucketへのパブリックアクセスをしていたドメインをR2 Bucketへ向けます。
Custom Domainsに追加する形で問題なかったです。
この設定をするとIncremental migrationが行われるようになります。
Cloudflareのキャッシュ設定をする
Cloudflare Websites > sitename > Caching > Cashe Rules から Hostname指定で Edge TTLやBrowser TTLをいい感じに設定します。
感想
おひとりさまなので雑にやりましたが、利用者がいる場合にも稼働させたまま移行できそうな機能そろってるんだなと学びがありました。
Incremental migrationを使ったらAWSからの1円の請求無くせないことに気づきました。