Garage
APIS3-compatible object store for small self-hosted, geo-distributed clusters
- Price
- Free, open source
- Access
- S3 access key pair
About
Garage is an open-source object store that implements the Amazon S3 API and runs on ordinary servers spread across several locations. It keeps copies of each file in different zones, needs no external service, and has an admin REST API for nodes, buckets and access keys.
What you can do with it
- Store user uploads in buckets through the S3 API on your own servers
- Keep copies of files on servers in several locations or data centers
- Create buckets and access keys through the admin API or the garage CLI
Get started
- Write garage.toml and start a node with Docker or the binary
- Create a bucket and an access key with the garage CLI
- Point an S3 SDK or the AWS CLI at port 3900 with region garage
Example
# garage.toml from the quick start; GARAGE_DEFAULT_* hold the key pair and bucket name
docker run -d -p 3900:3900 -p 3901:3901 \
-v $(pwd)/garage.toml:/etc/garage.toml \
-e GARAGE_DEFAULT_ACCESS_KEY -e GARAGE_DEFAULT_SECRET_KEY -e GARAGE_DEFAULT_BUCKET \
dxflrs/garage:v2.4.1 /garage server --single-node --default-bucket
AWS_ENDPOINT_URL=http://localhost:3900 AWS_DEFAULT_REGION=garage \
AWS_ACCESS_KEY_ID=$GARAGE_DEFAULT_ACCESS_KEY AWS_SECRET_ACCESS_KEY=$GARAGE_DEFAULT_SECRET_KEY \
aws s3 cp ./photo.jpg s3://$GARAGE_DEFAULT_BUCKET/photo.jpgDetails
- Hosting
- Self-hosted
- Available in
- Worldwide
- MCP server
- None
- Works with
- S3