في حالة تعدد المواقع (multisite)، وبفهمي لما تقوم به بالفعل، تريد استخدام نسخة واحدة فقط من R2. إذا كانت إعداداتك في إعدادات المدير، فستحتاج إلى استخدام USE_DB_S3_CONFIG=true مع RAILS_DB=default وسيعمل ذلك بشكل ممتاز.
hooks:
after_assets_precompile:
- exec:
cd: $home
cmd:
- sudo -E -u discourse RAILS_DB=default USE_DB_S3_CONFIG=true bundle exec rake s3:upload_assets
- sudo -E -u discourse RAILS_DB=default USE_DB_S3_CONFIG=true bundle exec rake s3:expire_missing_assets
لترحيل الملفات المرفوعة (uploads)، تحتاج إلى تصدير هذه المتغيرات كما هو موضح أدناه أو واحدًا تلو الآخر.
RAILS_DB=default \
DISCOURSE_S3_REGION=auto \
DISCOURSE_S3_ENDPOINT=https://<account-id>.r2.cloudflarestorage.com \
DISCOURSE_S3_BUCKET=discourse-files \
DISCOURSE_S3_ACCESS_KEY_ID=<your-access-key> \
DISCOURSE_S3_SECRET_ACCESS_KEY=<your-secret-key> \
rake uploads:migrate_to_s3
إذا كنت تخطط لوضعها في ملف app.yml، فتأكد من استخدام DISCOURSE_S3_BUCKET لأن هناك أخطاء إملائية في قسم R2 في إعداد مزود تخزين كائنات متوافق مع S3 للملفات المرفوعة