Thank you, also I would to add that you can use any of these tools to copy from cloud to cloud, especially to/from S3 compatible object storage, for example, Rclone, Shargate, Gs Richcopy360 and GoodSync. all of these are compatible with similar clouds
We have just discovered a problem, Cloudflare R2 doesnāt allow public-read from the S3 endpoint URL, rather only the custom domain or a random r2.dev
domain.
(Pre-signed downloads work, just no direct public access is supported.)
But discourse only uses the CDN URL for embedded images, and not direct downloads, which use the S3 endpoint URL.
Is there a way to make it use the CDN URL for all files, or force the use of a presigned url?
Related:
The workaround mentioned in that post works, add ?dl=1
fixes it, because its forces discourse to use a presigned S3 URL.

But with some frequency the backups failed silently and backups stayed on the local machine, filling up the disk. I looked at wasabi and Discourse errors and never found an explanation that would make it possible for either end to āfixā anything.
I also see this with some frequency (every several months) even though my Discourse is running in AWS Lightsail and Iām uploading to AWS S3. So Iām not sure itās wasabiās fault.
Would it be possible to catch this error and alert the admin? I do check the disk space and remove old backups when I upgrade but sometimes thatās too late and the forum goes down for no disk space.

I also see this with some frequency (every several months) even though my Discourse is running in AWS Lightsail and Iām uploading to AWS S3. So Iām not sure itās wasabiās fault.
I am fairly certain that the issue was that automatic OS reboots for security updates were happening while the backup was running. Make sure that you schedule your OS reboots and your backups at different times. It was after Iād moved that site from wasabi that I came up with this explanation, but Iām pretty sure thatās what it was.
uptime
says itās been up for 300 days so I donāt think thatās the problem. But along similar lines, I had Discourse backups scheduled at 2:00 am and Lightsail snapshots at 2:30 am, so maybe the upload sometimes isnāt complete and the snapshot messes with it. Iāve separated the two operations by an hour- weāll see if it makes a difference.
Regardless I think itās reasonable to warn admins if the upload fails, for whatever reason.
I think that itās time that you do kernel upgrades and reboot.
Could you be running out of ram?
After implementing remote Backblaze backups, I see this error in my dashboard:
The server is configured to upload files to S3, but there is no S3 CDN configured. This can lead to expensive S3 costs and slower site performance. See āUsing Object Storage for Uploadsā to learn more.
I didnāt configure uploading of files, I only configured backups via this config:
DISCOURSE_S3_REGION: "s3.us-west-00X"
DISCOURSE_S3_INSTALL_CORS_RULE: false
DISCOURSE_S3_ENDPOINT: https://s3.us-west-00X.backblazeb2.com
DISCOURSE_S3_ACCESS_KEY_ID: mykeyid
DISCOURSE_S3_SECRET_ACCESS_KEY: myaccesskey
DISCOURSE_S3_BUCKET: community-forum
DISCOURSE_S3_BACKUP_BUCKET: community-forum/backups
DISCOURSE_BACKUP_LOCATION: s3
Did I do something wrong?
Something seems misconfigured, I notice when I try uploading a file to a post, I received this error:
Unsupported value for canned acl 'public-readā
Any assistance would be appreciated.

DISCOURSE_S3_BUCKET: community-forum
Remove this if you donāt want uploads to go to s3.
You saved the day brother. Thanks so much!

Iāve separated the two operations by an hour- weāll see if it makes a difference.
Did that seem to work?
It has happened once in the past month since I separated the two processes by an hour, so it didnāt āfixā it, and it doesnāt happen often enough to say whether it helped.
On the bright side, I noticed there is a backup status section on the admin page that shows available disk space, which saves me from constantly opening a terminal and doing a df just to check for stuck backups. I customized the text to remind myself that I expect around 80 GB free.

I customized the text to remind myself that I expect around 80 GB free
Thatās a good idea.
I saw the image before I read that you had customized the text and was wondering what logic was at play to determine that was āgoodā!
I just couldnāt get this to work with Scaleway using the Bitnami Discourse image.
The env variables were set but clearly werenāt being read/applied correctly (or at all?).
So Iāve set the S3 variables in the admin panel and set the region directly in the rails console (still hoping that this just becomes a text field):
SiteSetting.s3_region="fr-par"
It gave me a validation error, but I just commented out the validation check before updating the setting, then put it in again.

I just couldnāt get this to work with Scaleway using the Bitnami Discourse image.
The Bitnami image isnāt packaged by us and donāt follow our recommendations. Everything documented here is only tested against the official install.
This has been solved by enabling ās3 use cdn url for all uploadsā, an option recently added by discourse.
since we were using R2 before, we needed to use discourse remap
to manually replace the broken links, and synced s3 files just in case, and then we rebaked all posts.