For years, “send my backups to object storage” meant one of two things: a monthly bill to a cloud provider, or standing up a fiddly S3 gateway in front of something that wasn’t S3. I wanted the shape of object storage — buckets, immutability, scale — but on my hardware, in my house.
Proxmox Backup Server 4.2 finally makes that clean. Released in April 2026, it adds S3-compatible object storage as a first-class datastore backend — no longer a tech preview. Pair it with self-hosted MinIO and you get PBS backups landing in a bucket you own. This flagship builds exactly that, and I tested the MinIO side end-to-end: a real bucket, a real object round-trip. Two gotchas will trip you if nobody warns you — HTTPS and the local cache — so I’ll make sure they don’t.
Every name and credential below is an example. Replace 10.0.0.110 with your MinIO/NAS address, the bucket name pbs-backups with yours, and — most importantly — never reuse the demo credentials. Generate your own access/secret keys and keep them in your secret store. If a value looks specific to one machine, it’s a placeholder to change, not a literal to copy.
Stand up MinIO (the object store)
MinIO is a self-hosted, S3-compatible object store. You can run it as a container anywhere Docker runs, or — nicely for a homelab — install it straight onto a NAS.
The container form is a one-liner. Set your own root credentials; the console lands on :9001, the S3 API on :9000.
docker run -d --name minio -p 9000:9000 -p 9001:9001 \
-e MINIO_ROOT_USER=youradmin \
-e MINIO_ROOT_PASSWORD=CHANGE_ME_STRONG \
minio/minio server /data --console-address ":9001"
Then create the bucket PBS will use. I verified this exact round-trip against my own MinIO — here’s the real output, a bucket made and an object stored:
$ mc mb local/pbs-backups
Bucket created successfully 'local/pbs-backups'.
$ mc cp probe.txt local/pbs-backups/probe.txt
$ mc ls local/pbs-backups
[2026-09-04 19:47:26 UTC] 15B STANDARD probe.txt
If your NAS is an ASUSTOR, there’s a MinIO CE package in App Central (deployed as a Docker container). Two things to know: it’s labeled for testing and development only, and it ships a well-known default login — change it the moment it’s up. It’s a lovely way to try self-hosted S3 on hardware you already run, as a homelab experiment rather than a production target.
Point PBS 4.2 at it
On the PBS side you first register an S3 endpoint, then create a datastore that uses it. These are the real PBS 4.2 CLI shapes.
proxmox-backup-manager s3 endpoint create myminio \
--access-key 'youradmin' \
--secret-key 'CHANGE_ME_STRONG' \
--endpoint 'https://10.0.0.110:9000' \
--region us-east-1 \
--path-style true
MinIO uses path-style bucket addressing (endpoint/bucket) rather than the virtual-host style AWS defaults to, so set that flag.
Proxmox Backup Server does not support unencrypted S3 — all traffic is HTTPS. Plain-HTTP MinIO (fine for a quick mc test like mine above) will be rejected. Give MinIO a TLS certificate; if it’s self-signed, pass its fingerprint to the endpoint with --fingerprint so PBS can validate it. This is the single most common reason a first attempt fails.
proxmox-backup-manager datastore create s3store /var/cache/pbs-s3 \
--backend type=s3,client=myminio,bucket=pbs-backups
That /var/cache/pbs-s3 is the mandatory local cache directory.
An S3 datastore isn’t “no local storage.” PBS keeps a persistent local cache (the docs suggest 64–128 GiB) alongside the object backend, and the bucket must grant get, put, list, and delete. One S3 datastore also can’t be shared between two PBS instances at once. Plan the cache disk before you start.
What’s next
Your backups now live in an object store you own, with PBS’s deduplication on top. To close out this flagship run we head back into the hypervisor for a problem that bites every growing homelab: custom CPU models in Proxmox VE 9.2 so a VM can live-migrate between nodes with different processors.
Related posts:
- Proxmox VE 9.2 SDN Fabrics — the previous flagship.
- Proxmox VE 9.2 Custom CPU Models for Live Migration — the next flagship: migrate across unlike CPUs.
- Deploy a Proxmox Backup Server — the PBS foundation this builds on.
- How Fast Can You Actually Restore a Proxmox Backup? — measuring restores, now from object storage.
- Use a NAS With Your Homelab — where a self-hosted MinIO naturally lives.
- SMART Disk-Health Trending for Your Whole Fleet — watch the disks under your backup cache.
- Proxmox Storage Guide: LVM, ZFS, NFS, and Ceph — how object storage fits the wider picture.
Backups are only as good as your last successful restore — test yours.
Comments
Comments are powered by GitHub Discussions — sign in with a GitHub account to join the conversation.