Replace MinIO with RustFS in Iceberg Quickstart due to maintenance and security concerns
- Dominant language
- Java
- Stars
- 9.2k
- Forks
- 3.5k
- Avg merge
- 2d 16h
- Merged PRs (30d)
- 129
Description
## Body
MinIO has been facing significant controversy recently and has effectively discontinued support for their official Docker images. Furthermore, the MinIO image currently referenced in the Iceberg ecosystem contains unpatched CVE vulnerabilities.
## Context:
Docker Image Support: https://linuxiac.com/minio-with-yet-another-controversial-move/
Security Advisory: https://github.com/minio/minio/releases/tag/RELEASE.2025-10-15T17-29-55Z
## Suggestion
Given the situation, should we consider updating the [Iceberg Quickstart](https://iceberg.apache.org/spark-quickstart/#docker-compose) to swap out MinIO for RustFS? This would ensure a more secure and maintained S3-compatible backend for new users.
## About RustFS
RustFS is a high-performance, distributed object storage system designed for modern data infrastructure.
- Memory Safety & Stability: Built entirely in Rust, ensuring memory safety and immunity to data races without the overhead of a Garbage Collector (GC).
- Superior Small-File Performance: Benchmarks show a 2.3x throughput improvement over MinIO for 4KiB small object workloads, even on commodity CPUs/hardware.
- Strict S3 Compatibility: Designed as a drop-in replacement, fully compatible with AWS S3 APIs, ensuring seamless integration with Spark, Iceberg, and Trino.
- Low Resource Footprint: Extremely lightweight, making it ideal for containerized environments (Docker/K8s) and local development setups.
## Proposed Next Steps
If this sounds good to the maintainers, I can validate the setup and open a PR to update the Quickstart guide.
Contributor guide
Research direction
Start with the Iceberg Quickstart Docker Compose setup linked in the issue and validate RustFS as the S3-compatible backend for the documented Spark and Iceberg flow. Update the quickstart configuration and instructions only after the setup works; done means new users can run the quickstart successfully without MinIO.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, docker-compose, rust
- Domain
- devops, documentation
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100