Como configurar o Cloudflare R2 para sua comunidade Discourse

Para multisite, para que eu entenda o que você já está fazendo, você deseja usar apenas uma instância com o R2. Se suas configurações estiverem nas configurações de administrador, você precisará usar USE_DB_S3_CONFIG=true com RAILS_DB=default para que funcione perfeitamente.

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 a migração de uploads, você precisa exportar essas variáveis como abaixo ou uma por uma.

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

Se você planeja colocá-lo no app.yml, certifique-se de usar DISCOURSE_S3_BUCKET, pois há erros de digitação na seção R2 de Configure an S3 compatible object storage provider for uploads