Cómo configurar Cloudflare R2 para tu comunidad Discourse

Para multisite, según mi comprensión de lo que ya están haciendo, desean utilizar solo una instancia con R2. Si la configuración está en los ajustes de administración, deben usar USE_DB_S3_CONFIG=true junto con RAILS_DB=default para que funcione perfectamente.

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

Para la migración de las cargas, deben exportar estas variables como se muestra a continuación, o una por una.

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

Si planean agregarlo a app.yml, asegúrense de usar DISCOURSE_S3_BUCKET, ya que hay errores tipográficos en la sección de R2 de Configure an S3 compatible object storage provider for uploads