Skip to content

Update Quickstart Demo to Use S3 (via RustFS) Instead of Local File System #2495

@wuchong

Description

@wuchong

Search before asking

  • I searched in the issues and found nothing similar.

Motivation

To better reflect real-world usage and provide a more compelling onboarding experience, we should update the Fluss quickstart demo to use S3 (like through RustFS) as the default remote storage backend instead of the local file system.

Using cloud storage like S3 aligns with typical production deployments and helps new users understand how to configure Fluss in distributed, scalable environments from the very beginning.

This change would involve:

  • Updating the quickstart documentation and example configurations to use s3:// URIs
  • Ensuring necessary dependencies (e.g., fluss-fs-s3) are included
  • Providing clear guidance on AWS credentials setup (e.g., via environment variables or IAM roles)

Creating this issue will help track the effort and encourage community contribution.

Solution

Why RustFS?

In late 2025, the company behind MinIO announced a shift in strategic direction, effectively placing MinIO into maintenance-only mode to focus on commercial offerings like AIStor. This decision was further confirmed in community discussions, signaling reduced investment in open-source innovation.

In response, Robin Moffatt explored alternatives for local, single-node S3-compatible storage and highlighted both S3Proxy and RustFS as viable options in his blog post.

Among these, RustFS stands out:

  • It has over 10× more GitHub stars than S3Proxy,
  • Shows significantly higher development activity,
  • Is backed by a dedicated company providing ongoing support and roadmap investment,
  • And has seen rapid community adoption—its star count is growing quickly.

Given these factors, we propose prioritizing RustFS for evaluation as our S3-compatible storage solution. But also open for other alternatives.

Anything else?

No response

Willingness to contribute

  • I'm willing to submit a PR!

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions