1 Matching Annotations
  1. Last 7 days
    1. Alternatives to MinIO for single-node local S3
      • Context & Motivation:

        • Following the MinIO company's decision to shift away from maintaining the open-source release, developers and demo creators needed alternative local S3 emulators.
        • The author's criteria focused strictly on single-node, local testing/demo environments: ready-to-use Docker images, S3 compatibility, open-source licensing (per OSI), simple configuration, and active community/backing.
        • Testing baseline used a minimal Docker Compose setup: DuckDB reading and writing Apache Iceberg data backed by local S3 storage.
      • Evaluated Solutions:

        • S3Proxy:
          • Lightweight, highly compatible, and very easy to set up (πŸ‘πŸ‘).
          • Noted downside: Depends on Apache jclouds, which was retired to the Apache Attic in mid-2025.
        • RustFS:
          • Easy setup with an included GUI and strong S3 compliance (πŸ‘πŸ‘).
          • Drawbacks: Currently in alpha release and recently experienced a notable security vulnerability.
        • SeaweedFS:
          • Mature open-source project with solid S3 compatibility and a built-in UI (πŸ‘).
          • Slight initial hurdle regarding auth config files in Docker Compose, though the maintainer promptly pushed changes to streamline single-node setup.
        • Zenko CloudServer:
          • Formerly known as S3 Server (by Scality); straightforward replacement (πŸ‘).
          • Downsides include confusing branding across Scality/Zenko/CloudServer and outdated Docker Hub images referenced in documentation.
        • Garage:
          • Lightweight distributed-focused object store with an AGPL license.
          • Steep setup curve for simple single-node demos due to custom initialization, mandatory key ID format constraints, and external TOML configuration requirements (😬).
        • Apache Ozone & Ceph Object Gateway:
          • Deemed too heavyweight and complex for lightweight single-node demo stacks (Ozone required at least four nodes; Ceph required extensive setup).
      • Author's Takeaway:

        • Recommended choices for local demos: SeaweedFS and S3Proxy (with RustFS as a potential future candidate once matured).
        • Reminded users to weigh project governance (foundation vs. single maintainer) and bus factor when selecting tools.

      Hacker News Discussion

      • MinIO Fork (pgsty/silo):
        • A prominent fork created by Ruohang Feng (originally pgsty/minio, renamed to pgsty/silo) was highlighted by multiple commenters as the most seamless drop-in replacement that requires zero config or code changes for existing MinIO users.
      • VersityGW as a Popular Alternative:
        • Several users strongly recommended versitygw for homelabs and local testing, highlighting its stability and ability to map S3 buckets directly to standard POSIX directories without complex overhead.
      • Garage Experience & Caveats:
        • Commenters noted that Garage v2.3.0 added a --single-node --default-bucket flag that significantly simplifies single-node setups compared to earlier versions.
        • However, technical drawbacks were emphasized: Garage relies on eventual consistency and lacks strict conditional PUT semantics, making it unsuitable for workloads like Apache Iceberg or Litestream-style lock guarantees.
      • SeaweedFS Community Input:
        • The SeaweedFS maintainer actively participated in the thread, clarifying performance benchmarks, welcoming issue reports for concurrency or documentation gaps, and pointing to updated documentation and broad S3 feature coverage.
      • Other Noteworthy Mentions:
        • HS5: A lightweight object store designed specifically for local S3 simulation with integrated DuckDB support and strict ETag / conditional request compliance.
        • Filestash S3 Gateway: Mentioned as a flexible proxy translating S3 requests across diverse backend storages (SFTP, SMB, NFS).
        • Incus: Noted that the LXD successor project recently adopted its own native S3 service to drop MinIO dependencies.