Uploading Images For Your Eleventy Blog to Cloudflare R2 from Obsidian
At some point I will write about my Obsidian as a blog editor setup in more detail, but I just wanted to make a note here, that the plugin S3 Image Uploader does indeed work for R2 as well.
- create an R2 bucket
- create an API token with read and write access for your bucket
- put the token data into your password manager (key id, secret key, "jurisdiction-specific" S3 endpoint, token value just in case (even though we don't use it here))
- install S3 Image Uploader in your vault
- enter the data from your token
- Access Key ID goes into the field AWS Access Key ID
- Secret Access Key goes into the field AWS Secret Key
- enter some other details for the connection
- region can be auto
- bucket name is the name of your r2 bucket
- important: activate use custom endpoint
- enter the "jurisdiction-specific" S3 endpoint url there[1]
- (optional) If - like me - you have access to your media set up through a Cloudflare Pages Function (I've used this tutorial) you also want to enable and fill out the custom image url.
And that's already it. You can see my first upload using this setup if you visit my latest DailyDogo.
Here's the source of that post:
---
title: DailyDogo 1310 🐶
date: 2025-06-29T00:03:02+03:00
lastmod: 2025-06-29T00:03:02+03:00
tags:
- DailyDogo
---
DailyDogo 1310 🐶

I have no idea why it's called that, I also feel like they changed the UI here recently... anyway this endpoint just works. ↩︎
-
← Previous
DailyDogo 1309 🐶 -
Next →
DailyDogo 1310 🐶