Setup
Create a Cloudflare account
If you don’t have one already, create an account at cloudflare.com.
Create an R2 bucket
- Navigate to R2 Object Storage in the Cloudflare dashboard
- Click Create bucket
- Give it a name (e.g.,
ringee-storage) - Select a location (or leave as automatic)
Generate API credentials
- Go to R2 → Manage R2 API Tokens
- Click Create API token
- Grant Object Read & Write permissions
- Copy the Access Key ID and Secret Access Key
Set up public access (optional)
If you need public URLs for stored files:
- Go to your bucket → Settings → Public Access
- Enable public access and note the public bucket URL
Environment Variables
| Variable | Required | Description |
|---|---|---|
CLOUDFLARE_BUCKETNAME | Yes | Name of your R2 bucket |
CLOUDFLARE_ACCOUNT_ID | Yes | Your Cloudflare account ID |
CLOUDFLARE_ACCESS_KEY | Yes | R2 API access key ID |
CLOUDFLARE_SECRET_ACCESS_KEY | Yes | R2 API secret access key |
CLOUDFLARE_BUCKET_URL | Yes | Public URL for the bucket |
CLOUDFLARE_REGION | No | Region (default: auto) |
STORAGE_PROVIDER | No | Storage provider (default: cloudflare) |

