古いアップロードをMinioに移行する

このようなコマンドを実行しています:

DISCOURSE_S3_BUCKET="abc" DISCOURSE_S3_REGION="minio" DISCOURSE_S3_ACCESS_KEY_ID="abc" DISCOURSE_S3_SECRET_ACCESS_KEY="abc" DISCOURSE_S3_ENDPOINT="my minio endpoint" rake uploads:migrate_to_s3

しかし、以下のエラーが発生します:

‘DISCOURSE_S3_CDN_URL’ 環境変数を指定してください

CDNを設定したくない場合は、バケット名のプレフィックスをそのまま指定すればよいと思います。

Minioはサポートされておらず、動作しない可能性があります。

まだそのメッセージが表示されます

DISCOURSE_S3_BUCKET="test" DISCOURSE_S3_REGION="minio" DISCOURSE_S3_ACCESS_KEY_ID="xxx" DISCOURSE_S3_SECRET_ACCESS_KEY="xxx" DISCOURSE_S3_ENDPOINT="https://myendpoint.com" DISCOURSE_S3_CDN_URL="test"  rake uploads:migrate_to_s3
デフォルトがすでに移行済みか確認中...
25件中10件のアップロードが S3 へ移行されていません。db 'default' での S3 移行に失敗しました。
2件の投稿が新しい S3 アップロード URL へ再マッピングされていません。db 'default' での S3 移行に失敗しました。
'default' 上で欠落しているアップロードを検索中...

欠落している投稿のアップロードはありません。
再焼き直しが必要な投稿はありません
'default' に対してアップロードを S3 へ移行中...
環境変数 'DISCOURSE_S3_CDN_URL' を指定してください

以前は Digital Ocean Spaces への移行が可能だったと思います。Minio と Spaces が同じかどうかはわかりませんが、もし興味があり、試してみて Discourse で Minio をサポートするなら、その作業をスポンサーできます。

上記の引用部分の代わりに、フルの CDN URL を使用してみてください。例えば次のような形式です:「DISCOURSE_S3_CDN_URL=“https://bucket_name.s3.ap-south-1.amazonaws.com/folder_name_if_any”」。また、「ap-south-1」という部分は、実際の Amazon リージョン名 に置き換えてください。

免責事項:この提案は Amazon S3 ユーザー向けのみです。