The most versatile backend — connects to Amazon S3 and every S3-compatible service including Cloudflare R2 (zero egress fees), MinIO, DigitalOcean Spaces, Backblaze B2, and Wasabi.
my-images:
type: s3
bucket: my-bucket
region: us-east-1
prefix: images/ # optional key prefix
secret: "hmac-secret" # optional signing
Zero egress fees. endpoint: https://ACCOUNT.r2.cloudflarestorage.com, region: auto
Self-hosted. endpoint: http://minio:9000, forcePathStyle: true
endpoint: https://nyc3.digitaloceanspaces.com
endpoint: https://s3.us-west-004.backblazeb2.com
endpoint: https://s3.us-east-1.wasabisys.com
| Method | Best For |
|---|---|
| IAM Role (auto-detected) | EC2, ECS, Lambda — no credentials needed |
| Environment variables | AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY |
| Explicit in config | accessKeyId + secretAccessKey in source config |
Free tier — no credit card required.