Overview
Garage is an open-source, S3-compatible object store built by the Deuxfleurs team, who describe themselves as sysadmins without a dedicated backbone. It is designed for the situation most self-hosters face: second-hand machines of different sizes, and servers in different places connected over the ordinary internet.
It ships as a single dependency-free binary for any Linux distribution and runs on x86_64, ARMv7 or ARMv8 with about 1 GB of RAM and 16 GB of disk per node. Each chunk of data is replicated across three zones, so a cluster keeps working when a site, disk or network link fails, and it tolerates latency up to around 200 ms between nodes. The design draws on Amazon's Dynamo paper and CRDTs.
Garage implements the core of the S3 API: object and bucket operations, multipart uploads, presigned URLs, SSE-C encryption, CORS and static website hosting. It does not implement bucket versioning or S3 ACLs and bucket policies; permissions are managed per access key per bucket with its own CLI. Unsupported endpoints return 501.
It has been developed since at least 2021 with EU public funding. It suits self-hosted backups, media storage and static sites, and is a common suggestion for people moving off MinIO's community edition.
Pricing and plans
| Plan | Price | What you get |
|---|---|---|
| Self-hosted | $0 | AGPLv3; support contracts can be discussed with the Garage team |
What it does
- Geo-distributed by design
- Replicates each chunk across three zones and runs over the internet between sites.
- Low requirements
- About 1 GB RAM and 16 GB disk per node; works on heterogeneous, second-hand hardware.
- Single binary
- A dependency-free binary for all Linux distributions on x86_64 and ARM.
- Static website hosting
- Serve buckets as websites with index and error documents.
- Core S3 API
- Signature v4, presigned URLs, multipart uploads, SSE-C and CORS.
Strengths and limitations
Strengths
- Actively maintained open-source project
- Runs on modest and mixed hardware
- Built for multi-site clusters over the public internet
- Simple to deploy and operate
Limitations
- No bucket versioning
- No S3 ACLs or bucket policies; uses its own per-key permission model
- Static website support does not handle redirects
- Signature v2 is not supported
- AGPLv3 licence obligations apply to modified versions offered over a network
Who it suits
Good for
- Self-hosted backups across home or office sites
- Small organisations wanting open-source S3 storage
- Replacing MinIO community edition in simple setups
Look elsewhere if
- Workloads needing versioning, object lock or S3 bucket policies
- Teams that want a managed service
Alternatives to Garage
| Tool | From | Free option | Stages |
|---|---|---|---|
| Tigris Globally distributed object storage | Usage-based | Free tier | |
| Hetzner Object Storage EU object storage | €6.49/mo | ||
| UploadThing File upload service for TypeScript apps | $10/mo | Free tier | |
| Supabase Managed Postgres backend platform | $25/mo | Free tier | |
| Akamai Object Storage (Linode) Bundled object storage | $5/mo | ||
| Cloudflare R2 Egress-free object storage | Usage-based | Free tier |
Questions
Is Garage S3 compatible?
Yes, for the core S3 API including multipart uploads and presigned URLs, but not bucket versioning, ACLs or bucket policies.
What hardware does Garage need?
Any x86_64 CPU from the last ten years or ARMv7/ARMv8, 1 GB of RAM and at least 16 GB of disk per node.
What licence is Garage under?
The GNU AGPLv3.
Is Garage a good MinIO alternative?
For self-hosted clusters that need the core S3 API it is a maintained, lightweight option; check the missing features such as versioning first.
Sources read for this page