So I was following the Digital Ocean Spaces guide, and I started looking around for cheaper providers for my (very) small community. I noticed this old post which confused me, because I had just looked at Backblaze B2 and saw that it was S3 compatible. Turns out they launched the feature 30 minutes before I had looked (what luck!). So I have decided to write a quick guide on how I got it to work with my current community:
Step 1: Configuring Backblaze B2 Cloud Storage
Go to B2 Cloud Storage and click on Sign Up Today.
Generate App Key
Click on “App Keys” or go to this page. Click “Add New Application Key”, name it, then click “Create New Key”. Make sure you record the keyID and applicationKey as they will be hidden once you leave the page.
Create Upload and Backups buckets
Go back to the buckets page and create your desired buckets. Make sure the uploads one is public, and the backups one is private. (TODO: Test auto creation from discourse)
Step 2: Configuring Discourse
This step mostly follows the Digital Ocean Spaces guide, with the following notable differences:
- Use your App Key keyID with the s3 keyID field.
- Use the App Key applicationKey with the s3 secret access key field.
- Use the s3 endpoint provided in the App Key.
- Leave the CDN blank unless you are providing your own.
For more information on Backblaze B2 S3 compatibility, see this blog post.