rustfs
SHA-256用 Rust 编写的高性能 S3 兼容分布式对象存储,Apache 2.0 协议,可替代 MinIO。
Rust 写的 MinIO 替代品,协议更自由
核心功能
- 兼容 S3 API,可对接现有 S3 客户端与工具链
- Rust 编写,内存安全且无 GC 停顿,性能高
- 支持分布式与单机部署,具备纠错、自愈和扩容能力
- 自带 Web 管理控制台,支持 K8s Helm 一键部署
- 支持版本控制、对象锁定、加密、生命周期与跨站点复制
避坑指南
- •这是服务端基础设施软件,不是普通桌面应用,需要基本的服务器运维能力。默认账号密码必须修改后再暴露到网络。Local 和 Static 两种 KMS 后端仅限开发测试,生产环境请使用 Vault 或 AWS KMS。S3 Tables 和 MinIO 磁盘格式兼容仍是预览功能,且 MinIO 加密过的对象无法被 RustFS 直接读取,迁移前需验证。Swift API 与 SFTP 需在编译时显式开启,不在默认构建中。
适用场景
- 为 AI 训练和大数据平台搭建高性能数据湖存储
- 企业自建私有云对象存储,替代 MinIO 规避 AGPL 协议风险
- 边缘设备或 IoT 网关上的轻量级安全存储
- 从 MinIO、Ceph 等平台平滑迁移或共存
RustFS 是一款用 Rust 编写的高性能分布式对象存储系统,被广泛视为 MinIO 的现代替代方案。它最大的两个差异点在于协议与安全性:MinIO 采用限制较多的 AGPL v3,而 RustFS 使用对商业友好的 Apache 2.0 协议,无传染性条款;同时 Rust 的内存安全机制避免了 Go 系存储常见的 GC 停顿。它兼容 S3 API,支持版本控制、对象锁定(WORM)、服务端加密、KMS(Vault/AWS KMS)、生命周期管理、桶复制与站点复制,并原生支持 OpenStack Swift API 和 Keystone 认证。自带 Web 控制台和 K8s Helm Charts,可与 MinIO、Ceph 共存或迁移。无遥测数据上报,适合数据湖、AI 和大数据场景。注意:S3 Tables 与 MinIO 磁盘格式兼容仍为预览功能,MinIO 加密过的对象无法被 RustFS 读取。
标签
快速上手
安装软件
根据你的发行版安装对应的包(dpkg / rpm / AppImage)
确保服务器已安装 Docker,然后运行 docker run -d -p 9000:9000 -p 9001:9001 -v /data:/data --name rustfs rustfs/rustfs 启动服务
在浏览器打开 http://localhost:9001 进入 Web 管理控制台
使用默认账号 rustfsadmin / rustfsadmin 登录,创建存储桶后即可上传下载文件
- 确保服务器已安装 Docker,然后运行 docker run -d -p 9000:9000 -p 9001:9001 -v /data:/data --name rustfs rustfs/rustfs 启动服务
- 在浏览器打开 http://localhost:9001 进入 Web 管理控制台
- 使用默认账号 rustfsadmin / rustfsadmin 登录,创建存储桶后即可上传下载文件
已提供 SHA-256 校验码,下载后可自行核对文件完整性
该校验码提取自 GitHub 官方 Release 页面
SHA256 校验码
0cb0924df93734d14f708004eff4b0e48a147fbdc074756ca0d6b8ec919629b8该校验码提取自 GitHub Release 页面,下载后请自行核对文件完整性
本平台所有 SHA-256 校验码均提取自项目在 GitHub 官方 Release 页面发布的文件,未做任何修改。你可以通过 GitHub Releases 页面自行验证。
开源透明
查看 GitHub 源码卸载说明
Docker 部署:先执行 docker stop rustfs && docker rm rustfs 停止并删除容器,再用 docker rmi rustfs/rustfs 删除镜像,最后手动删除挂载的数据目录。二进制部署:停止进程后删除可执行文件和数据目录即可,不会在系统中留下注册表或服务残留(如配置了 systemd 服务需一并禁用删除)。
无额外依赖
下载后即可直接使用,无需安装其他运行环境
遇到问题?查看下方 FAQ
5 FAQs