- 工信部备案号 滇ICP备05000110号-1
- 滇公网安备53011102001527号
- 增值电信业务经营许可证 B1.B2-20181647、滇B1.B2-20190004
- 云南互联网协会理事单位
- 安全联盟认证网站身份V标记
- 域名注册服务机构许可:滇D3-20230001
- 代理域名注册服务机构:新网数码
- CN域名投诉举报处理平台:电话:010-58813000、邮箱:service@cnnic.cn
RustFS 是一个基于 Rust 构建的高性能分布式对象存储系统。Rust 是全球最受开发者喜爱的编程语言之一,RustFS 完美结合了 MinIO 的简洁性与 Rust 的内存安全及高性能优势。它提供完整的 S3 兼容性,完全开源,并专为数据湖、人工智能(AI)和大数据负载进行了优化。
与其他存储系统不同,RustFS 采用更宽松、商业友好的 Apache 2.0 许可证,避免了 AGPL 协议的限制。以 Rust 为基石,RustFS 为下一代对象存储提供了更快的速度和更安全的分布式特性。
特征和功能状态
高性能:基于 Rust 构建,确保极致的速度和资源效率。
分布式架构:可扩展且容错的设计,适用于大规模部署。
S3 兼容性:与现有的 S3 兼容应用和工具无缝集成。
数据湖支持:专为高吞吐量的大数据和 AI 工作负载优化。
完全开源:采用 Apache 2.0 许可证,鼓励社区贡献和商业使用。
简单易用:设计简洁,易于部署和管理。
请按照以下步骤快速上手 RustFS:
curl -O /install_rustfs.sh && bash install_rustfs.sh
RustFS 容器以非 root 用户 rustfs (UID 10001) 运行。如果您使用 Docker 的 -v 参数挂载宿主机目录,请务必确保宿主机目录的所有者已更改为 1000,否则会遇到权限拒绝错误。
# 创建数据和日志目录 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 # 使用指定版本运行 docker run -d -p 9000:9000 -p 9001:9001 -v $(pwd)/data:/data -v $(pwd)/logs:/logs rustfs/rustfs:1.0.0.alpha.68
您也可以使用 Docker Compose。使用根目录下的 docker-compose.yml 文件:
docker compose --profile observability up -d
注意: 我们建议您在运行前查看 docker-compose.yaml 文件。该文件定义了包括 Grafana、Prometheus 和 Jaeger 在内的多个服务,有助于 RustFS 的可观测性监控。如果您还想启动 Redis 或 Nginx 容器,可以指定相应的 profile。
适用于希望从源码构建支持多架构 RustFS Docker 镜像的开发者:
# 在本地构建多架构镜像./docker-buildx.sh --build-arg RELEASE=latest# 构建并推送到仓库./docker-buildx.sh --push# 构建指定版本./docker-buildx.sh --release v1.0.0 --push# 构建并推送到自定义仓库./docker-buildx.sh --registry your-registry.com --namespace yourname --push
docker-buildx.sh 脚本支持: - 多架构构建: linux/amd64, linux/arm64 - 自动版本检测: 使用 git tags 或 commit hash - 灵活的仓库支持: 支持 Docker Hub, GitHub Container Registry 等 - 构建优化: 包含缓存和并行构建
为了方便起见,您也可以使用 Make 命令:
make docker-buildx # 本地构建make docker-buildx-push # 构建并推送make docker-buildx-version VERSION=v1.0.0 # 构建指定版本make help-docker # 显示所有 Docker 相关命令
注意 (macOS 交叉编译): macOS 默认的
ulimit -n限制为 256,因此在使用cargo zigbuild或./build-rustfs.sh --platform ...交叉编译 Linux 版本时,可能会因ProcessFdQuotaExceeded失败。构建脚本会尝试自动提高限制,但如果您仍然看到警告,请在构建前在终端运行ulimit -n 4096(或更高)。
售前咨询
售后咨询
备案咨询
二维码

TOP