Skip to content

feat: add support for RustFS S3 storage - #3341

Open
martinfojtik wants to merge 1 commit into
teableio:developfrom
martinfojtik:feat-rustfs-support
Open

feat: add support for RustFS S3 storage#3341
martinfojtik wants to merge 1 commit into
teableio:developfrom
martinfojtik:feat-rustfs-support

Conversation

@martinfojtik

Copy link
Copy Markdown

Minio is no longer maintained; RustFS is a performant alternative with full S3 compatibility.

This PR enables setting the forcePathStyle attribute on the S3Client, which RustFS requires.

To have RustFS on your local machine, you should update your environment variables. Go to the dockers folder and run docker compose -f storage-rustfs.yml up -d.

@nimser

nimser commented Aug 7, 2026

Copy link
Copy Markdown

FWIW, RustFS already works with Teable as-is — we run it in production with BACKEND_STORAGE_PROVIDER=minio and the BACKEND_STORAGE_MINIO_* vars pointed at RustFS. The minio SDK uses path-style addressing for non-AWS endpoints, which is what RustFS wants.

develop also already carries BACKEND_STORAGE_S3_FORCE_PATH_STYLE and BACKEND_STORAGE_S3_INTERNAL_FORCE_PATH_STYLE on the s3 provider, so the forcePathStyle change here looks covered.

What still seems worth doing is naming: minio and the BACKEND_STORAGE_MINIO_* prefix name an implementation, not a protocol. Documenting s3 + FORCE_PATH_STYLE as the path for RustFS and friends, with minio as a legacy alias, would cover this without new code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants