Configs2026年5月26日·1 分钟阅读

Garage — Lightweight Self-Hosted S3-Compatible Storage

Garage is a lightweight, self-hosted, geo-distributed object storage system that implements the S3 API and is designed for small to medium infrastructure.

Agent 就绪

先审查再安装

这个资产需要先审查。复制的指令会要求 Agent dry-run、列出写入项,确认后再继续。

Needs Confirmation · 64/100策略:需确认
Agent 入口
任意 MCP/CLI Agent
类型
Skill
安装
Single
信任
信任等级:Established
入口
Garage Overview
先审查命令
npx -y tokrepo@latest install d0a7b7dd-5920-11f1-9bc6-00163e2b0d79 --target codex

先 dry-run,确认写入项后再运行此命令。

Introduction

Garage is a self-hosted S3-compatible object storage server built in Rust. Unlike heavyweight systems like Ceph or MinIO, Garage is designed for small clusters spread across multiple locations. It handles geo-distribution natively, replicating data across zones with minimal coordination, making it suitable for homelab setups and small organizations.

What Garage Does

  • Serves objects over the S3 API, compatible with standard AWS SDKs and tools
  • Replicates data across geographic zones for redundancy without a central coordinator
  • Supports multi-tenancy with access keys, bucket policies, and per-bucket quotas
  • Provides a static website hosting mode directly from S3 buckets
  • Runs as a single static binary with minimal resource consumption

Architecture Overview

Garage uses a peer-to-peer protocol where all nodes are equal — there is no master or coordinator. Metadata is stored in a Merkle-search-tree CRDT that synchronizes across nodes without consensus overhead. Data blocks are replicated across zones according to a configurable replication factor. The cluster layout maps partitions to nodes, and rebalancing happens automatically when nodes join or leave.

Self-Hosting & Configuration

  • Deploy as a single static binary on each node (Linux, ARM, or x86_64)
  • Configure via a TOML file specifying data directories, RPC ports, and S3 endpoint
  • Assign nodes to geographic zones for cross-site replication
  • Create access keys and buckets via the garage CLI or the admin HTTP API
  • Monitor with built-in Prometheus metrics and optional Grafana dashboards

Key Features

  • Designed for geo-distributed clusters across multiple physical locations
  • No single point of failure — fully decentralized peer-to-peer architecture
  • Low resource footprint suitable for Raspberry Pi and homelab hardware
  • S3-compatible API works with rclone, restic, Nextcloud, and any S3 client
  • Static website hosting directly from S3 buckets with custom domain support

Comparison with Similar Tools

  • MinIO — Higher performance for single-site deployments but heavier resource usage
  • Ceph (RGW) — Enterprise-grade with POSIX and block support, but complex to operate
  • SeaweedFS — Blob-oriented store with FUSE mount, not primarily S3-focused
  • CubeFS — Cloud-native distributed filesystem, requires larger minimum cluster
  • Wasabi / Backblaze B2 — Managed cloud storage, not self-hosted

FAQ

Q: How many nodes do I need to run Garage? A: A single node works for testing. For production geo-distribution, 3 nodes across 3 zones is recommended with replication factor 3.

Q: Can I use Garage as a backup target? A: Yes. Tools like restic, Duplicati, and rclone work with Garage's S3 API for encrypted backups.

Q: Does Garage support versioning or lifecycle policies? A: Bucket versioning is supported. Lifecycle policies for automatic deletion are on the roadmap.

Q: What are the hardware requirements? A: Garage runs on hardware as small as a Raspberry Pi 4 with 2 GB RAM. Production nodes benefit from SSDs for metadata storage.

Sources

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产