# MinIO / Garage

Object storage you host. MinIO is AGPL-3.0; Garage is AGPL-3.0 — Amazon S3 without the bucket in someone else's region.

**Replaces:** Amazon S3

**Tier:** Easy

## Problem

Amazon S3 is object storage you rent. You wanted an S3-shaped API on a volume you own. MinIO is AGPL-3.0 and speaks the S3 API. Garage is AGPL-3.0 (Deuxfleurs) if you want a smaller geo-distributed store. This is not every AWS IAM policy, Glacier tier, or CloudFront edge. Nextcloud is files for humans — /replace/google-drive.

## Stack

- [MinIO](https://min.io) — AGPL-3.0 S3-compatible object storage
- [Garage](https://garagehq.deuxfleurs.fr) — AGPL-3.0 S3-compatible store if you want that lineage

## Estimated SaaS cost saved

| You stop paying | Typical / year | Self-host instead |
|---|---:|---|
| Amazon S3 (small team) | $1,200 | MinIO or Garage + a volume |

**About $1,200 / year** on a small team, before you count lock-in.

## Deploy on Railway

Placeholder: MinIO (or Garage) plus a volume for blobs. Bind the S3 API and the console. No one-click template in this repo yet — Start on Railway. Human file suites stay on /stacks/nextcloud-files.

[Start on Railway](https://c17.io/go/railway/minio-object?from=%2Fstacks%2Fminio-object.md)

[Nextcloud if people need a Drive UI, not an S3 API](https://c17.io/stacks/nextcloud-files)

## AGENT_PROMPT

```
Replace Amazon S3 with MinIO (preferred) or Garage.

- Persist blobs on a volume. Bind the S3 API. Create one bucket, one access key, put and get one object.
- Point one existing S3 client at the new endpoint. Write AGENT_PROMPT.md.
- Do not claim Glacier, CloudFront, or every IAM condition.
```

## FAQ

### MinIO or Garage?

MinIO if you want the common S3 client docs. Garage if you want a smaller multi-node store. Pick one.

### Why not Nextcloud?

Nextcloud is the Drive UI. This page is the S3 API apps already speak.

Source: https://c17.io/stacks/minio-object
