Open Source Alternatives LogoOpen Source Alternatives
AlternativesBlogAdvertise
Open Source Alternatives LogoOpen Source Alternatives

Stay Updated

Subscribe to our newsletter for the latest news and updates about Alternatives

Open Source Alternatives LogoOpen Source Alternatives

Handpicked Open Source Alternatives to Paid Softwares

Product
  • Categories
  • Tag
  • Advertise
Resources
  • Blog
  • Collection
  • Submit
  • Advertise your tool
Company
  • Privacy Policy
  • Terms of Service
  • Refund Policy
  • Sitemap
Alternatives
  • Claude Code
  • Jira
  • Notion
  • Slack
  • Linear
  • Wispr Flow
  • All alternatives
Copyright © 2026 All Rights Reserved.
Home/Categories/Cloud & Hosting/rustfs
icon of rustfs

rustfs

Open source alternative to Amazon S3 and Cloudflare R2

Host distributed, S3-compatible object storage on your own servers. Built in Rust with an Apache 2.0 license, no AGPL restrictions.

33.2K starsRustApache-2.0Active this week
Visit websiteGitHub repoDeployDeploy on Hostinger
image of rustfs
Contents
  1. 01Who rustfs is for
  2. 02The problem it solves
  3. 03How it solves it
  4. 04Strengths and trade-offs
  5. 05rustfs vs alternatives
  6. 06Quick start
  7. 07Tech stack
  8. 08FAQ
  9. 09Similar open-source tools
TL;DR

rustfs is a distributed object storage server built in Rust that implements the S3 API, letting teams self-host object storage without per-request or per-egress fees. It is an alternative to Amazon S3 and Cloudflare R2 for workloads where cost control, data sovereignty, or air-gapped infrastructure are requirements. Licensed under Apache 2.0 (not AGPL), it runs via Docker, bare-metal binary, or Kubernetes Helm chart. Best for data engineering teams managing large-scale object stores for AI training, data lakes, or backup infrastructure.Apache-2.0 · Rust · 33.2K stars · Active this week

who it's for

Who rustfs is for#

Data engineering teams building AI training infrastructure

RustFS provides S3-compatible object storage where training datasets live on-premise or in a private cloud, avoiding per-request egress fees when repeatedly pulling data into training jobs. ILM tiering moves cold data to remote S3 targets automatically once models are trained.

Skip if:

Your training data already lives in a well-managed cloud bucket and cost is not a concern. Adding another storage layer creates operational overhead without benefit when the problem you are solving is data access, not data residency or cost.

Platform teams replacing MinIO for Apache 2.0 compliance

Teams running MinIO that need to comply with internal IP policies rejecting AGPL, or startups building hosted services, can switch to RustFS for a compatible S3 API under Apache 2.0. The S3 wire protocol compatibility means most clients work without reconfiguration.

Skip if:

You rely on MinIO's encrypted on-disk format for in-place migration. That path requires S3-level replication rather than in-place conversion, which may be impractical for very large datasets.

DevOps teams self-hosting S3-compatible backup storage

RustFS works as a backup target for tools that speak S3, including Restic, Velero, and most database backup agents. Running it on a dedicated host eliminates per-gigabyte cloud storage charges for backups that grow predictably over time.

Skip if:

The backup volume is small and the operational overhead of running a distributed storage server outweighs the cost savings. A managed service is simpler when storage needs are modest and infrastructure capacity is limited.

Regulated industries requiring data residency controls

Teams in healthcare, finance, or government that cannot store data outside specific jurisdictions can run RustFS on infrastructure they control, with server-side encryption and audit logging enabled. OIDC/SSO integration connects to existing identity providers for access control.

Skip if:

Your regulatory posture already covers a specific commercial storage provider through a BAA, DPA, or equivalent compliance agreement. Adding self-hosted storage introduces operational risk without compliance benefit in that case.

the problem

The problem it solves#

Object storage on commercial cloud platforms charges for every API request, every gigabyte transferred, and every gigabyte stored. For teams running data lakes, AI model training, or large-scale backup pipelines, those fees compound quickly. A team repeatedly pulling training data or scanning billions of objects for analytics can easily spend thousands of dollars monthly on egress alone.

Beyond cost, commercial platforms mean your data lives in a jurisdiction outside your control. Teams subject to GDPR, CCPA, or internal data-residency policies cannot always accept that tradeoff. Air-gapped deployments, regulated industries, and teams that have been surprised by unexpected cloud storage bills share the same underlying pain: they need S3-compatible object storage that runs where they decide, at a cost they can predict.

how rustfs solves it

How it solves it#

S3 core feature set with tracked compatibility

RustFS implements versioning, object lock (WORM), server-side encryption, S3 Select, lifecycle management (ILM), and event notifications. Coverage is tracked in a public S3 compatibility matrix so teams can verify specific operations before migrating. Existing S3 SDKs and CLI tools connect without code changes.

Erasure coding with background bitrot detection

Data is distributed across drives using erasure coding, providing fault tolerance when drives fail. A background scanner runs bitrot detection across stored objects and heals corrupted data automatically. Pool expansion grows capacity by appending new drive sets to the existing cluster topology without downtime.

Apache 2.0 license with no copyleft restrictions

Licensed under Apache 2.0, not AGPL. Teams can build services on top of RustFS, offer it internally, or include it in a product without triggering copyleft obligations. This is the primary licensing difference from MinIO, which moved to AGPL-3.0 and restricts managed service offerings.

Multi-protocol access beyond S3

In addition to S3, RustFS exposes OpenStack Swift API with Keystone authentication, FTPS, WebDAV, and SFTP. Swift and SFTP are opt-in cargo features. IAM, OIDC, and SSO provide identity integration with existing authentication systems, including multi-tenancy and bucket quota controls.

Kubernetes-native deployment with observability

Official Helm charts are published at charts.rustfs.com for Kubernetes deployments. The Docker image runs as a non-root user (UID/GID 10001) by default. The Docker Compose reference configuration bundles Grafana, Prometheus, and Jaeger for observability without additional setup.

S3 Tables with Iceberg REST Catalog (preview)

S3 Tables ships as an opt-in Iceberg REST Catalog with automated PyIceberg and DuckDB query coverage, bringing table-format queries directly to the object store. This feature is in preview with bounded compatibility claims; not all Iceberg engines are covered. Verify against the S3 Tables support matrix for your specific engine.

strengths · trade-offs

Strengths and trade-offs#

Strengths

  • Apache 2.0 vs MinIO's AGPL-3.0MinIO shifted to AGPL-3.0, which requires companies offering MinIO as a hosted or managed service to release their source code under AGPL. RustFS is Apache 2.0 with no such restriction. Teams building products, startups offering internal hosted storage, and enterprises with IP policies that reject copyleft can use RustFS without legal review overhead.
  • Rust memory model eliminates garbage-collector pausesGo-based storage servers experience latency spikes when the garbage collector runs. Rust's ownership model eliminates GC pauses at the language level. The README documents a stress test comparing RustFS to MinIO on equivalent hardware (2-core Intel Xeon, 4GB RAM, 4x40GB drives, 15 Gbps network) with results in a linked benchmark video.
  • No telemetry with explicit compliance documentationRustFS claims no outbound telemetry and lists GDPR (EU/UK), CCPA (US), and APPI (Japan) compliance in its feature documentation. For teams with data-residency requirements, running storage on owned infrastructure eliminates the compliance surface that comes with managed cloud platforms.

Trade-offs

  • -MinIO on-disk migration is in preview and incompleteThe MinIO file-format compatibility mode (rio-v2 feature flag) is not part of the default build, and objects encrypted by MinIO cannot be read by RustFS. Migrating an existing MinIO deployment requires using S3 replication to copy objects rather than doing an in-place format migration.
  • -Single-node single-drive deployments cannot expand in placeA single-node single-drive (SNSD) deployment cannot be converted to a multi-drive topology without creating a new cluster and migrating data over S3. Teams that start small should plan their initial drive topology for the target count from the beginning, as in-place expansion is not supported for this configuration.
  • -S3 Tables support is gated and carries bounded claimsS3 Tables ships as an opt-in Iceberg REST Catalog, not enabled in the default build. Not all Iceberg engines or vendor profiles are covered, and each carries individual compatibility limitations documented in the S3 Tables support matrix. Teams requiring broad Iceberg compatibility should verify before building on this feature.
versus alternatives

rustfs vs alternatives#

RustFS vs Amazon S3

Amazon S3 is the reference implementation of cloud object storage. RustFS implements the same API for teams that want to self-host rather than pay per-operation. The decision is about deployment model: managed cloud versus owned infrastructure.

FeatureRustFSAmazon S3
LicenseApache 2.0Proprietary
DeploymentSelf-hostedAWS managed
Pricing modelServer cost onlyPer-request, per-GB egress
Data residencyYour infrastructureAWS regions
S3 compatibilityBroad, matrix trackedReference implementation

RustFS is the better choice when egress volume is high, when data must stay on specific infrastructure for compliance reasons, or when you need air-gapped storage with no external dependencies. Amazon S3 is the better choice when you want zero infrastructure management, need the full AWS ecosystem (Lambda triggers, Athena, CloudFront), or when your team lacks the operational capacity to run distributed storage servers. RustFS does not replicate every S3 API extension; teams that depend on S3-specific advanced features should check the public compatibility matrix before migrating.

RustFS vs Cloudflare R2

Cloudflare R2 is a managed S3-compatible service with no egress fees, targeting teams primarily concerned with bandwidth costs. Both R2 and RustFS skip per-egress charges, but through different models: R2 is fully managed while RustFS requires you to operate the server.

FeatureRustFSCloudflare R2
LicenseApache 2.0Proprietary
DeploymentSelf-hostedCloudflare managed
Egress feesNone (self-hosted)None
Data residencyYour infrastructureCloudflare's network
Protocol supportS3, Swift, FTPS, WebDAV, SFTPS3 compatible

RustFS is the better option when data must stay on infrastructure you own, when you need protocols beyond S3 (Swift, SFTP, WebDAV), or when you are deploying in an air-gapped or private network environment. R2 is the better option when you want no-egress managed storage with zero operational overhead. Running a distributed storage cluster requires server capacity, monitoring, and operational knowledge that R2 avoids entirely.

install · quick start

Quick start#

bash
Deploy RustFS with Docker after preparing the data directories with the required ownership.
```bash
mkdir -p data logs
chown -R 10001:10001 data logs
docker run -d -p 9000:9000 -p 9001:9001 -v $(pwd)/data:/data -v $(pwd)/logs:/logs rustfs/rustfs:latest
```
tech stack · detected from GitHub

What it's built on#

Languages
PythonRust
Cache
Redis
frequently asked

FAQ#

Is RustFS a drop-in replacement for MinIO?

For most use cases, yes. RustFS implements the S3 core feature set that MinIO-compatible clients expect, including bucket operations, versioning, object lock, and IAM policies. The primary incompatibility is on-disk format: if you have MinIO-encrypted objects, those cannot be read by RustFS, so migration requires copying data over S3 rather than doing an in-place swap.

What is the difference between RustFS and Amazon S3?

Amazon S3 is a managed cloud service; you pay per-request, per-gigabyte stored, and per-gigabyte transferred out. RustFS is self-hosted software that implements the same S3 API. You pay for the hardware or VMs instead of per-operation fees. Teams with high-throughput workloads or data-residency requirements typically find self-hosting cheaper and more controllable at scale.

Does RustFS support Kubernetes?

Yes. Official Helm charts are published at charts.rustfs.com. The Docker image is multi-arch (amd64 and arm64) and runs as a non-root user by default. The provided Docker Compose reference configuration also includes Grafana, Prometheus, and Jaeger for observability integration.

What license does RustFS use?

Apache 2.0. This differs from MinIO, which uses AGPL-3.0. Apache 2.0 allows commercial use, modification, and distribution without requiring source code disclosure and without restricting managed service offerings. The README explicitly positions this as a key advantage over AGPL-licensed object storage alternatives.

Is RustFS production-ready?

Core S3 features, distributed mode, erasure coding, bitrot protection, versioning, and object lock are marked as available and covered by CI gates in the feature matrix. Features in preview include S3 Tables (Iceberg REST Catalog) and MinIO on-disk compatibility; these carry bounded compatibility claims. The repo has been actively maintained since November 2023 with commits through September 2026.

also worth a look

Similar open-source tools#

seaweedfs

seaweedfs

One cluster: S3 store, POSIX files, and Iceberg tables

34.8KGoApache-2.0
Spinifex

Spinifex

Run AWS workloads on your own hardware, free and open-source.

177GoAGPL-3.0
Storj

Storj

Decentralized S3 storage with end-to-end client-side encryption

3.3KGoAGPL-3.0
MinIO AIStor

MinIO AIStor

Hyperscale S3-compatible object storage for AI workloads

61.4KGoAGPL-3.0
FckSignups

FckSignups

Open-source tools that work instantly, no signup required

4.3KTypeScriptGPL-3.0
portabase

portabase

Self-hosted backup tool for PostgreSQL, MySQL, MongoDB, and 7 more

1.7KTypeScriptApache-2.0

Repository

Stars
33.2K
Forks
1.5K
License
Apache-2.0
Latest
1.0.0
Last commit
today
Last verified
Sep 19, 2026
Repo
rustfs/rustfs ↗

Additional details

Language
Rust
Open issues
28
Contributors
174
First release
2023

Categories

Cloud & HostingDatabases & StorageDevOps & CI/CD

Tags

Cloud NativeKubernetesDocker ManagementDeveloper ToolsSelf Hosted