STATUS ÜBERPRÜFEN
I AM LISTENING TO
|

Day 38: Garage Object Storage – The Self-Hosted S3 Alternative – 7 Days of Docker

23. Oktober 2025
.SHARE

Table of Contents

Updates

  • 23.10.: Added my Garage WebUI installation instructions. Still tweaking things …

Enterprise-Grade S3-Compatible Storage

In an era where data sovereignty and privacy concerns are at an all-time high, the need for self-hosted alternatives to major cloud providers has never been more pressing. Enter Garage, an innovative open-source distributed object storage system that brings enterprise-grade S3-compatible storage to your own infrastructure.

Developed by Deuxfleurs, a French non-profit organization dedicated to defending individual freedom and rights on the Internet, Garage represents a paradigm shift in how we think about distributed storage. Unlike traditional solutions that require extensive infrastructure and complex setup procedures, Garage was designed from the ground up to be lightweight, resilient, and deployable on heterogeneous hardware.

Garage is on my update radar, as I was looking for an alternative to Minio. Minio decided to remove the web interface in the latest releases of their community edition. Current web interface alternatives are MinIO Console / OpenMaxIO UI .

What Makes Garage Special?

The Philosophy Behind Garage

Garage wasn’t born in a corporate boardroom or university lab. It emerged from the real-world needs of system administrators who understood that not everyone has access to dedicated backbone networks or uniform hardware. The developers recognized a fundamental gap in the market: existing distributed storage solutions were either too complex, too resource-intensive, or designed for homogeneous data center environments.

The result is a storage system that embraces the reality of modern self-hosted infrastructure: mixed hardware, varying network conditions, and the need for operational simplicity without sacrificing reliability.

Core Architecture and Design

At its heart, Garage implements a three-way replication strategy across different zones, ensuring your data remains available even when entire nodes or network segments fail. This isn’t just theoretical resilience – it’s been battle-tested in production environments where network latency can reach 200ms and hardware failures are a fact of life.

The system leverages cutting-edge research in distributed systems, drawing inspiration from:

  • Amazon’s Dynamo: For highly available key-value storage patterns
  • Conflict-Free Replicated Data Types (CRDTs): Ensuring consistency without coordination overhead
  • Maglev Load Balancing: For efficient request distribution

Technical Specifications

System Requirements (2025):

  • CPU: Any x86_64 processor from the last decade, or ARMv7/ARMv8
  • Memory: Minimum 1GB RAM
  • Storage: At least 16GB available space
  • Network: Up to 200ms latency tolerance, 50+ Mbps recommended
  • Operating System: Any Linux distribution (single binary deployment)

Why Garage Matters in 2025

The Self-Hosting Renaissance

2025 has marked a significant shift in how individuals and organizations approach data storage. With increasing awareness of data privacy, vendor lock-in concerns, and the desire for digital autonomy, self-hosting has moved from niche hobby to mainstream necessity.

Garage addresses several critical pain points that have historically made self-hosted object storage challenging:

Operational Complexity: Traditional solutions like Ceph or GlusterFS require specialized knowledge and significant ongoing maintenance. Garage ships as a single binary with sensible defaults.

Hardware Requirements: Most distributed storage systems assume uniform, high-end hardware. Garage thrives on mixed environments – you can build a cluster from whatever second-hand machines are available.

Network Dependencies: Garage was designed for the real internet, not idealized data center networks. It handles intermittent connectivity, variable latency, and partial network failures gracefully.

S3 Compatibility: The Universal Language of Object Storage

One of Garage’s most compelling features is its comprehensive implementation of the Amazon S3 API. This isn’t just marketing speak – Garage provides genuine compatibility with the vast ecosystem of S3-compatible tools and applications.

Immediate Integration Opportunities:

  • Content Management Systems (WordPress, Drupal)
  • Media Platforms (Nextcloud, PeerTube)
  • Backup Solutions (restic, duplicity, Duplicati)
  • Development Tools (Docker registries, Git LFS)
  • Static Site Hosting (Hugo, Jekyll, Gatsby)

Getting Started: Docker Compose Installation

The Modern Deployment Approach

While Garage can be deployed as a standalone binary or through various orchestration platforms, Docker Compose offers the perfect balance of simplicity and production-readiness for most self-hosting scenarios.

Pre-Installation Considerations

Before diving into the installation, consider your storage strategy:

Metadata vs. Data Storage: Garage separates frequently-accessed metadata from bulk data storage. Ideally, place metadata on faster storage (SSD) and data on higher-capacity drives (HDD).

Filesystem Choice: For data storage, XFS provides optimal performance. Avoid EXT4 for large object counts due to inode limitations. For metadata storage, consider BTRFS or ZFS for their integrity features, especially if using the default LMDB database engine.

Network Planning: Even for single-node deployments, consider your future scaling needs. Garage’s configuration allows seamless expansion from single-node to multi-node clusters.

Complete Docker Compose Setup

Here’s a production-ready Docker Compose configuration that incorporates current best practices:

Also checkout Garage UI for a complete docker setup with a web interface or read more about here.

Configuration Deep Dive

The heart of any Garage deployment is the garage.toml configuration file. Here’s a thoroughly commented version that explains each section:

Garage WebUI

A simple admin web UI for Garage, a self-hosted, S3-compatible, distributed object storage service.

Portainer Stack

garage.toml

And the garage.toml setup for one instance, with replication set to one. Still trimming the configuration, but all working for me. Alias web sharing requires a wildcard domain.

Create Layout

If your unable to create the first layout. Get your node ID after the server started

And create a layout, which should than be visible in the WebUI

Testdrive

Connect via awscli. Create ~/.aws/credentials

Next ~/.aws/config

Connect to a bucket you created

Security Best Practices

Secret Management: Never use default or predictable secrets in production. Generate cryptographically secure tokens:

Network Security: Consider running Garage behind a reverse proxy (nginx, Caddy, Traefik) for SSL termination and additional security headers.

Access Control: Implement proper bucket policies and IAM-style permissions through Garage’s key management system.

Operational Excellence

Initial Cluster Setup

Once your Docker Compose stack is running, you’ll need to bootstrap the cluster:

Monitoring and Maintenance

Garage provides comprehensive metrics through its admin API. Key metrics to monitor include:

  • Storage utilization across nodes and zones
  • Replication health and consistency status
  • Request latency and error rates
  • Network partition detection and recovery

Scaling Strategies

One of Garage’s greatest strengths is its ability to scale horizontally. Adding nodes to an existing cluster involves:

  1. Deploying new nodes with identical configuration (different node IDs)
  2. Updating the cluster layout to include new nodes
  3. Rebalancing data distribution across the expanded cluster

The process is designed to be non-disruptive, with data migration happening automatically in the background.

Real-World Applications

Case Study: Media Platform Migration

Consider a typical migration scenario: moving from AWS S3 to self-hosted Garage for a media-heavy application. The process demonstrates Garage’s practical benefits:

Before: Monthly S3 costs of $200+ for 2TB of video content with moderate access patterns.

After: One-time hardware investment of $800 for a three-node Garage cluster providing 6TB usable storage with built-in redundancy.

Migration Process:

  1. Deploy Garage cluster in parallel with existing S3 setup
  2. Use rclone to migrate data with checksum verification
  3. Update application configuration to point to Garage endpoints
  4. Gradually shift traffic while monitoring performance

Results: 90% cost reduction, improved data sovereignty, and better performance due to local deployment.

Integration Ecosystem

Garage’s S3 compatibility opens doors to countless integration opportunities:

Development Workflows:

  • Docker registries for container image storage
  • Git LFS for large file versioning
  • Terraform state backends for infrastructure as code

Content Management:

  • WordPress media libraries
  • Nextcloud external storage
  • Static site generators for Jekyll, Hugo, or Gatsby

Backup and Archival:

  • restic repositories for encrypted backups
  • Duplicity for incremental backups
  • Personal media libraries with automatic organization

The Future of Garage

Funding and Development Trajectory

Garage’s development roadmap is backed by substantial European Union funding through 2025, ensuring continued innovation and stability. Recent funding rounds have supported:

  • Performance optimizations for large-scale deployments
  • Enhanced S3 compatibility for edge cases and new API features
  • Operational tooling improvements for easier cluster management
  • Security enhancements including encryption at rest and improved access controls

Community and Ecosystem

The project benefits from an active community of system administrators, developers, and privacy advocates. Key community initiatives include:

  • Integration guides for popular self-hosted applications
  • Performance benchmarks across different hardware configurations
  • Deployment automation through Ansible, Terraform, and Kubernetes operators
  • Monitoring solutions with Prometheus and Grafana dashboards

Conclusion: Why Garage Matters

In a world increasingly dominated by centralized cloud services, Garage represents something profound: the democratization of enterprise-grade storage infrastructure. It proves that sophisticated distributed systems don’t require massive corporate resources or specialized expertise to deploy and maintain.

For individuals and organizations committed to data sovereignty, Garage offers a practical path forward. It’s not just about avoiding vendor lock-in or reducing costs (though it accomplishes both). It’s about reclaiming control over one of your most valuable digital assets: your data.

The storage needs of 2025 demand solutions that are resilient, flexible, and respectful of user autonomy. Garage delivers on all three counts while maintaining the compatibility and reliability expected from production storage systems.

Whether you’re a privacy-conscious individual looking to escape Big Tech’s data collection, a small business seeking cost-effective storage solutions, or an organization with specific compliance requirements, Garage provides a compelling alternative that grows with your needs.

The future of storage is distributed, open-source, and in your control. Garage is leading the way.


Resources and Links

FAQ

What are the best open source alternatives to Amazon S3 storage?

The top open source S3-compatible storage solutions include Ceph, SeaweedFS, OpenIO, Storj (decentralized), and various cloud providers like Wasabi and Backblaze B2. Each offers unique advantages: Ceph provides unified object/block/file storage, SeaweedFS excels at handling billions of small files, and Storj offers decentralized architecture for enhanced security.

What is Ceph and why is it popular for S3 storage?

Ceph is an open source software-defined storage platform that provides object, block, and file storage from a single cluster. It’s S3-compatible through RADOS Gateway, self-healing, scalable to exabyte levels, and runs on commodity hardware. Ceph is popular because it eliminates single points of failure and provides enterprise-grade features without licensing costs.

How does SeaweedFS compare to traditional object storage systems?

SeaweedFS is optimized for handling billions of small files with O(1) disk seek performance. Unlike traditional systems that manage all metadata centrally, SeaweedFS distributes file metadata across volume servers, reducing bottlenecks. It supports S3 API, POSIX FUSE mount, automatic compression, and can scale from single-machine deployments to multi-datacenter clusters.

What are the main advantages of using Storj for object storage?

Storj offers decentralized cloud storage with 99.99% uptime, native geo-redundancy, and encrypted data-sharing protocols. Key benefits include no vendor lock-in, significantly lower costs than traditional cloud storage, automatic multi-region replication, and S3 compatibility for easy migration. However, it charges per-segment fees that may be expensive for many small files.

How do I choose between different open source S3 alternatives?

Consider these factors: data size and access patterns (SeaweedFS for small files, Ceph for mixed workloads), infrastructure requirements (self-hosted vs cloud), performance needs (Ceph for enterprise, SeaweedFS for speed), compliance requirements (Storj for privacy), and operational complexity (SeaweedFS is simpler to deploy than Ceph).

What hardware requirements do these storage systems have?

Most open source S3 alternatives run on commodity hardware. Ceph requires fast networking and at least 3 nodes for redundancy. SeaweedFS can start with a single machine and scale out. Generally, you need sufficient RAM (2-4GB per TB for Ceph), fast storage (SSDs recommended), and reliable networking. Specific requirements vary by workload and desired performance.

Can I migrate from Amazon S3 to open source alternatives easily?

Yes, most open source alternatives provide S3-compatible APIs, making migration straightforward. Tools like rclone, s3cmd, or AWS CLI can transfer data with minimal code changes. However, consider differences in advanced S3 features, data transfer costs, and testing thoroughly before full migration. Some providers offer migration assistance and tools.

What are the cost implications of switching from S3 to open source storage?

Open source alternatives can significantly reduce costs by eliminating egress fees, simplifying pricing models, and using commodity hardware. However, consider operational overhead, support costs, and staff training. Self-hosted solutions require infrastructure investment but offer predictable costs. Cloud-based open source providers often offer better pricing than AWS S3.

How do I set up a basic Ceph cluster for S3 storage?

To set up Ceph:
  1. Install Ceph on at least 3 nodes
  2. Configure monitors (ceph-mon), managers (ceph-mgr), and OSDs (ceph-osd)
  3. Deploy RADOS Gateway (ceph-rgw) for S3 API
  4. Create storage pools and configure security
Use cephadm or container deployments for easier management. Start with small clusters and expand as needed.

What monitoring and management tools are available for open source storage?

Ceph includes a built-in dashboard and Prometheus integration. SeaweedFS offers web UI and Prometheus metrics. Third-party tools include Grafana dashboards, Nagios plugins, and custom monitoring scripts. Most systems provide CLI tools (ceph status, weed shell) for operational tasks. Consider managed services if you prefer reduced operational overhead.

How do these systems handle data backup and disaster recovery?

Most systems provide built-in replication across nodes/sites. Ceph offers erasure coding and multi-site replication. SeaweedFS supports cross-datacenter replication and cloud tiering. Storj provides automatic geographic distribution. Implement additional backup strategies using tools like rclone for off-site backups and regular data integrity checks.

What security features do open source S3 alternatives provide?

Common security features include: encryption at rest and in transit, access control policies (IAM-compatible), authentication mechanisms, audit logging, and network security. Ceph supports object-level encryption, Storj provides client-side encryption, and SeaweedFS offers WebDAV and JWT authentication. Always configure TLS/SSL and implement proper access controls.

How do I configure S3 API access for these storage systems?

Configuration varies by system: Ceph requires RADOS Gateway deployment with user and bucket creation. SeaweedFS needs filer component with S3 API enabled. Most systems support standard S3 authentication (access keys) and bucket operations. Configure endpoints, create users/keys, and test with tools like s3cmd or AWS CLI before production use.

What performance optimizations should I consider?

Key optimizations include: using SSDs for metadata and hot data, configuring appropriate replication levels, tuning network settings, optimizing placement groups (Ceph), using erasure coding for cold data, implementing client-side caching, and monitoring I/O patterns. Consider workload-specific tuning and regular performance testing.

How do I troubleshoot common issues with open source storage systems?

Common troubleshooting steps:
  1. Check system logs and health status
  2. Verify network connectivity between nodes
  3. Monitor disk space and performance
  4. Review configuration files
  5. Test with simple operations first
Each system has specific debugging tools:
Let’s Talk!

Looking for a reliable partner to bring your project to the next level? Whether it’s development, design, security, or ongoing support—I’d love to chat and see how I can help.

Get in touch,
and let’s create something amazing together!

RELATED POSTS

Or: How I Learned to Stop Worrying and Love the Underscore Remember when you could just tell your computer what to do, in plain English, and it would actually do it? No? Well, grab your DeLorean, because we’re going back to the future with _hyperscript (yes, that underscore is part of the name, and yes, […]

As Visual Studio Code continues to dominate the code editor landscape in 2025, developers working with remote servers face an important decision: which SFTP extension should they use? The marketplace offers numerous options, but not all extensions are created equal. Some have been abandoned by their maintainers, while others have evolved into robust, actively maintained […]

Hey there! So you wanna build a Chrome extension? Awesome! It’s way easier than you think. Seriously, you can have a basic one running in like 5 minutes. Let me walk you through everything you need to know. Just build a leads data extractor for myself and a client! Not my first Chrome Extension, but […]

Alexander

I am a full-stack developer. My expertise include:

  • Server, Network and Hosting Environments
  • Data Modeling / Import / Export
  • Business Logic
  • API Layer / Action layer / MVC
  • User Interfaces
  • User Experience
  • Understand what the customer and the business needs


I have a deep passion for programming, design, and server architecture—each of these fuels my creativity, and I wouldn’t feel complete without them.

With a broad range of interests, I’m always exploring new technologies and expanding my knowledge wherever needed. The tech world evolves rapidly, and I love staying ahead by embracing the latest innovations.

Beyond technology, I value peace and surround myself with like-minded individuals.

I firmly believe in the principle: Help others, and help will find its way back to you when you need it.