RustFS 重要版本变更,让容器化部署更安全

RustFS 1.0.0 GA与MinIO全面对比:部署、迁移与选型指南 对象存储作为现代应用的基础设施,其选型往往决定系统的资源效率与运维复杂度。S3协议已成为事实标准,而轻量级实现正试图在兼容性与性能之间找到新平衡。RustFS 1.0.0 GA凭借Rust语言的内存安全与低资源占用特性,在Docker部署、S3兼容性验证、数据迁移等环节展现出与MinIO不同的技术路径。从容器化密集部署到边缘节点,从Java生态集成到前端直传,RustFS在特定场景下提供了更高效的替代方案。本文围绕对象存储的核心原理,对比RustFS与MinIO在架构、运维、生态上的差异,并结合实际迁移工具 阅读详情

随着 RustFS 的持续走热,越来越多的用户开始关注并使用 RustFS,而且在整个过程中提出了很多关键问题。其中在 Start the container using a non-root user #804
中,whg517 用户提出,从安全最佳实践角度出发,RustFS 在容器化运行状态下(包括 docker 部署和 k8s 部署),RustFS 实例应该以非 root 用户运行,并且添加更多安全加固措施。

截屏2025-11-13 13.03.15.png

以非 root 运行容器是业界的安全最佳实践共识,因此 RustFS 修改了 Dockerfile,具体包括:

  • 创建 UID 和 GID 均为 1000 的用户 rustfs;
  • rustfs 进程以 rustfs 用户启动;
  • 针对 k8s 部署,还增强了 securityContext 部分内容;

上述变更在 1.0.0-alpha.68 版本正式生效。在版本发布后,我们在 GitHub Issue 上看到有用户从 1.0.0-alpha.67 升级到 1.0.0-alpha.68 出现了 permission denied 错误:

截屏2025-11-13 13.10.51.png

为此,受影响用户可遵循下面的方法进行问题修复并升级。

注意:此变更仅影响容器化运行用户,对于通过脚本或者二进制安装的用户,不受此影响。而且仅影响 1.0.0-alpha.67 及之前版本的用户,后续版本不受影响。

Kubernetes 用户

对于 Kubernetes 用户,此次变更不受影响,因为在 Helm chart 编写之初就增加了 securityContext 部分内容,而且在 pod 中通过 initContainer 来对 /data 和 logs 目录的权限进行了修改(USER 和 GROUP 均为 1000),此次升级变更不会导致 Kubernetes 用户出现 permission denied 错误。

Docker 用户

对于使用 docker run 或者使用 docker compose 的用户来说,修复该错误的核心原理就是将 RustFS 使用的 /data 和 /logs 两个目录的用户和群组修改为 1000 即可。过程如下:

  • 回滚至 1.0.0-alpha.67 版本

用户可以先会滚至 1.0.0-alpha.67 版本,然后进入到容器中,将 /data 和 /logs 目录的用户和群组从 root 更改至 1000:

docker exec -it rustfs sh
chown -R 1000:1000 /data/
chown -R 1000:1000 /logs/
ls -ld /data/
drwxr-x--- 5 1000 1000 4096 Nov 12 04:06 /data/
ls -ld /logs/
drwxr-x--- 5 1000 1000 4096 Nov 12 04:06 /logs/
  • 升级至 1.0.0-alpha.68

直接升级到 1.0.0-alpha.68(或 latest,当前 latest 就是 68 版本)即可。升级成功之后可查看 rustfs 日志并查看 rustfs 进程运行的用户:

docker exec -it rustfs sh
/ $ id
uid=1000(rustfs) gid=1000(rustfs) groups=1000(rustfs)
/ $ whoami
rustfs
/ $ ps
PID   USER     TIME  COMMAND
    1 rustfs    0:15 /usr/bin/rustfs /data
   36 rustfs    0:00 sh
 8057 rustfs    0:00 ps
/ $ ls -ld /data/
drwxr-x--- 5 rustfs rustfs 4096 Nov 12 04:06 /data/
/ $ ls -ld /logs/
drwxr-xr-x 2 rustfs rustfs 4096 Nov 13 04:07 /logs/

RustFS 的安装

目前 RustFS 支持多种安装方式

  • 二进制下载安装或脚本安全
  • Docker 安装
  • Helm Chart 安装

安装方式和步骤可查看 RustFS 官网。

如果您想使用 docker 安装,可参考如下 docker-compose.yml:

services:
  rustfs:
    image: rustfs/rustfs:1.0.0-alpha.68
    container_name: rustfs
    hostname: rustfs
    environment:
      # Use service names and correct disk indexing (1..4 to match mounted paths)
      - RUSTFS_VOLUMES=/data
      - RUSTFS_ADDRESS=0.0.0.0:9000
      - RUSTFS_CONSOLE_ENABLE=true
      - RUSTFS_CONSOLE_ADDRESS=0.0.0.0:9001
      - RUSTFS_ACCESS_KEY=rustfsadmin
      - RUSTFS_SECRET_KEY=rustfsadmin
      - RUSTFS_CMD=rustfs
    ports:
      - "9000:9000"  # API endpoint
      - "9001:9001"  # Console
    volumes:
      - data:/data
      - logs:/logs
    healthcheck:
      test:
        [
        "CMD",
        "sh", "-c",
        "curl -f http://localhost:9000/health && curl -f http://localhost:9001/health"
        ]
      interval: 10s
      timeout: 5s
      retries: 3
      start_period: 30s
    networks:
      - rustfs

networks:
  rustfs:
    driver: bridge
    name: rustfs

volumes:
  data:
    driver: local
  logs:
    driver: local

欢迎大家使用 RustFS 作为对象存储系统,目前 RustFS 还在持续研发迭代中,如果您有任何问题,可以通过 GitHub:https://github.com/rustfs/rustfs 提 Issue 或 PR。

RustFS 1.0.0 GA vs MinIO:实测性能、内存与迁移避坑指南 对象存储是分布式系统中最基础也最容易踩坑的组件之一,而S3兼容接口已成为事实标准。当传统对象存储基于Go或Java实现时,运行时GC会在海量小文件与高并发场景下引发内存膨胀和延迟抖动,这正是MinIO等方案在长期运行中暴露出的痛点。RustFS作为用Rust构建的分布式对象存储,通过无GC设计、嵌入式KV元数据引擎与Raft强一致协议,在资源开销和性能稳定性上给出了另一种解法。从实际测试数据看,它在小文件吞吐、p99延迟和内存占用上均有明显优势,但生态成熟度、进阶功能兼容性以及Rust技术栈的维护成本同样不 阅读详情

相关推荐

探索MinIO替代方案:Ceph、Garage与RustFS在S3兼容存储中的实战对比

本文针对MinIO开源版本进入维护模式的情况,深入对比了Ceph、Garage与RustFS三款S3兼容存储的实战表现。文章分析了各自的定位、部署复杂度、性能特点与适用场景,为寻求MinIO替代方案的用户提供了清晰的选型指南和部署参考。

seed的博客 504

RustFS Windows 版本安装部署指南(免Docker版)

本文详细介绍在Windows系统部署RustFS对象存储服务的完整流程。内容包括:系统环境准备、两种安装方法(官方安装包和Scoop包管理器)、服务配置与运行(命令行和注册为Windows服务)、防火墙设置、安装验证、性能优化配置以及日常维护管理等。重点指导生产环境下的服务部署,提供安全加固建议和故障排除方案。通过本指南,用户可快速搭建高性能对象存储平台,并获取后续优化建议和学习资源。

分布式存储与RustFS的博客 2385

FFT去除频率分量的完整流程与数学分析

重叠与窗口:确保块间无缝过渡,避免幅度跳变;实时缓冲:处理速度需快于数据输入速度,避免断流;DAC的平滑角色:通过数模转换和滤波,将离散样点还原为连续波形。通过这种分段处理+重叠拼接的方法,即使FFT本身处理的是离散数据块,最终DAC输出仍能保持信号的时间连续性。以下是完整的数学分析过程和代码逻辑,演示如何通过FFT去除特定频率成分,并通过去窗技术恢复信号。信号加窗。

林愿留的博客 1606

RustFS 4月Beta版前瞻:从Alpha到生产就绪,核心功能与稳定性全解析

RustFS即将迎来重要版本迭代:4月发布Beta版,7月发布正式版(GA)。Beta版将实现功能冻结、稳定性提升和S3/MinIO完全兼容,适合非核心业务部署。关键改进包括:分布式可靠性增强(自动扩缩容/故障自愈)、企业级功能补齐(IAM/WORM/加密)、性能优化(AI场景适配)和运维可观测性提升。从Alpha到Beta的重点是解决稳定性问题,确保生产可用性。建议用户4月起可进行测试和小规模部署,7月GA版将进一步完善企业级高可用和合规能力,成为MinIO/Ceph的可靠替代方案。

分布式存储与RustFS的博客 642

3D视觉-结构光测量-线结构光测量

线结构光测量中,由激光器射出的激光光束透过柱面透镜扩束,再经过准直,产生一束片状光。这片光束像刀刃一样横切在待测物体表面,因此线结构光法又被成为光切法。线结构光测量常采用二维面阵CCD作为接受器件,因此只要通过增加垂直于面阵探测器的第三维度方向,就可以实现对三维物体的测量。

qq_20660115的博客 3121

告别复杂配置:dbswitch vs 传统工具(Kettle/DataX)在Greenplum数据同步中的性能对比

本文深入对比了新兴工具dbswitch与传统ETL工具Kettle、DataX在Greenplum数据同步中的表现。重点分析了dbswitch如何通过免中间文件、利用二进制COPY协议等设计,在异构数据库同步场景下实现更优的性能和更简化的配置,为技术选型提供清晰参考。

transformer2023的博客 1045

RustFS Beta.10 发布:PUT 反超 MinIO,这回是真的里程碑

RustFS 1.0.0-beta.10发布,性能实现重大突破:在11种对象尺寸的PUT测试中全面超越MinIO(小文件达2倍,4MiB达2.85倍),GET小文件首次反超(1.04x)。该版本重点修复了磁盘故障恢复、扩容再平衡等生产级稳定性问题,并推出Operator实现K8s原生管理。特别适合小文件写入场景(如日志、IoT数据),虽1MiB读取仍落后MinIO约77%,但beta.8到beta.10整体GET性能已翻倍。开源项目以beta版本实现主流方案反超,展现出强劲发展潜力,建议相关场景团队实测验证

分布式存储与RustFS的博客 441

树莓派4B+红外传感器:手把手教你DIY一个能走黑线的智能小车(Python代码全解析)

本文详细介绍了如何使用树莓派4B和红外传感器DIY一个智能循迹小车,包括硬件配置、GPIO连接、Python代码实现及优化算法。通过动态PWM调速、状态机设计和赛道记忆算法,提升小车的循迹性能和稳定性。适合初学者和电子爱好者动手实践。

weixin_29188043的博客 266

选对存储系统,避免企业资源浪费:RustFS社区版 vs 商业版深度对比

企业在选择分布式对象存储系统时,常常面临功能与成本的两难抉择。RustFS作为高性能分布式对象存储解决方案,提供社区版与商业版两种选择,满足不同规模企业的需求。本文将从功能特性、安全防护、部署维护和成本效益四个维度,为您提供清晰的对比分析与选择建议,助您做出最适合企业发展的决策。 ## 功能特性对比 ### 核心存储功能 RustFS社区版和商业版均基于Rust语言构建,提供高性能的分布式对象...

gitblog_00026的博客 1113

HotSpot G1 GC 的分区记账、SATB 并发标记与停顿目标调优解析

线上GC毛刺该调停顿目标、加大新生代还是换收集器?本文从HotSpot G1的设计出发,梳理分区与巨型对象、卡表与记忆集、写屏障与细化线程、停顿预测、SATB并发标记、自适应IHOP、混合回收规则及Full GC兜底,并注明JDK8至JDK27的版本差异。文中在JDK8与JDK17上实测:停顿目标从200ms降到20ms,伊甸区缩小四成、P99下降但仍超目标;巨型对象会反复触发又撤销并发标记;JDK17并行Full GC平均停顿约为JDK8的三成。最后给出日志解读、参数清单、调优流程与选型。

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 170万+

如何跑通SuperPoint+LightGlue的训练代码使用gluefactory进行训练和评估?

🏆本文收录于专栏,主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家!持续更新中,up!up!up!!

**My Coding Family** 1785

RustFS:MinIO的“平替”还是“乱杀”?

国产存储系统RustFS在性能上全面超越MinIO,4K随机读提升42%,内存占用降低67%。其采用Rust语言实现内存安全,Apache2.0协议规避AGPLv3风险,支持国产化适配和智能分层存储。虽然生态建设尚不完善,但100%兼容S3协议,在AI训练、边缘计算等场景优势显著。技术选型需权衡性能、稳定性和生态成熟度,RustFS适合追求极致性能的团队,MinIO则更符合稳定优先的需求。

分布式存储与RustFS的博客 2545

在 ABAP 环境中创建 Job Catalog Entry 和 Job Template 的完整实践指南

摘要:本文介绍了SAP BTP ABAP环境中Application Job的云原生解决方案,对比传统后台作业模式。重点阐述了Job Catalog Entry和Job Template两大核心概念,通过库存重估业务场景演示如何实现可调度类、创建Job Catalog Entry及Job Template。文章详细说明了从ABAP类到Job Catalog Entry再到Job Template的完整链路,并分享实际项目中的设计经验和注意事项,帮助开发者将传统后台作业迁移到Application Job框架

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 231

RUSTFS 容器化实战:从单机到高可用集群部署

本文详细介绍了RUSTFS对象存储的容器化部署全流程。从单机Docker快速部署入手,逐步深入到使用配置文件进行生产级优化,并通过Docker Compose编排多节点集群。最后,重点讲解了在Kubernetes上构建高可用生产集群的架构设计与实战步骤,涵盖StatefulSet、服务发现、数据持久化等核心要点,帮助用户实现从开发测试到稳定生产环境的平滑过渡。

life6的博客 480

基于STM32+ESP8266+手机APP的心率血氧温湿度监测报警系统设计(项目资料ID:18)

基于 STM32 微控制器、ESP8266 无线模块和 QT 手机 APP 的多参数监测报警系统。该系统可实时采集心率、血氧饱和度、环境温湿度等参数,通过 OLED 显示屏本地显示,并通过 WiFi 模块上传至手机 APP 实现远程监测与数据可视化。系统具备报警阈值自定义功能,当参数超出设定范围时,通过蜂鸣器和 LED 进行声光报警。系统以 STM32F103 为控制核心,采用 MAX30102 传感器采集心率和血氧,DHT20 采集温湿度,通过 ESP8266 实现无线通信,配合 QT 开发的手机 APP

以培养嵌入式工程师为己任 1万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

AllData搭建数据存储平台,集成开源项目DataSophon/CIoudEon/RustFS,建设数据平台/多模态数据存储

AllData数据中台通过拆解数据存储平台下数据平台、云原生平台、多模态数据存储3大功能,如何快速解决 “老问题” !

AllDataDC的博客 176

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Keystone 认证与访问控制实战:从 Session 管理到字段级权限的完整指南

本指南以 Keystone(`@keystone-6/core`)官方文档 [Authentication and Access Control](https://link.gitcode.com/i/4590d2b39b83867a3550ac8ac75803e6) 为主体,完整讲解如何为 Admin UI 与 GraphQL API 构建一套可落地的认证授权体系:从创建用户 List、接入 `

gitblog_01128的博客 641

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Flyte Data Proxy 配置与使用指南:控制平面与数据平面之间的签名 URL 桥接服务

Data Proxy 是 Flyte 体系中负责与数据存储(S3、RustFS、GCS 等)打交道的独立服务:它为数据上传生成签名 URL、为数据下载签发访问链接,并统一管理数据访问与权限校验。本文以仓库中的 [dataproxy/README.md](https://link.gitcode.com/i/333bfdd781775ed7489f2693d7e76e30) 为主体,结合 [data

gitblog_00008的博客 967

MinIO与RustFS:开源存储技术栈重构解析

对象存储和文件系统作为现代数据基础设施的核心组件,其技术演进直接影响企业IT架构。S3兼容存储如MinIO通过协议标准化解决了数据互通问题,而新兴的RustFS则通过内存安全语言和零外部依赖设计重塑存储引擎。在性能敏感场景下,Rust的无GC特性和零拷贝I/O可显著提升吞吐量,特别适合AI训练数据池等低延迟需求。随着AGPLv3许可证变更引发的商业使用限制,自主可控的存储方案选择成为技术决策关键点。本文通过实测数据对比分析MinIO与RustFS在IOPS、吞吐量和内存占用等核心指标的表现,为存储技术选型提

weixin_28693683的博客 220

MinIO许可证变更后,用Rust从零实现S3兼容对象存储的实践

对象存储是企业级基础设施的核心组件,而S3协议已成为事实标准。主流开源实现如MinIO在许可证调整后,AGPL条款对商业集成带来合规挑战,推动团队探索新的技术路线。S3兼容层的实现涉及协议解析、数据一致性、元数据管理及高并发性能调优等复杂问题。Rust凭借内存安全、零GC开销和静态二进制分发优势,成为构建轻量级存储内核的理想选择。从协议语义还原到WAL日志与崩溃恢复,从上千并发下的文件句柄优化到跨平台交付,本文完整拆解了一个基于Rust实现S3兼容对象存储的架构设计、真实性能数据与生产落地经验,为需要替换M

weixin_29185199的博客 273

dsh-purge 宿主层拦截到底卡在哪:提示词覆盖与受控演练台一次装清

同一个问题,换个模型能答,在你这台机器上却弹了拒绝。dsh-purge 要拆的正是这个卡点。它是装在本机官方 Harness 上的 AI 红队评测插件,做两件事:清洗宿主层拦截,用提示词注入按模型换台本。官方能力保留,覆盖段交给你。 ## 现象还原:模型明明能答,为什么界面弹了拒绝? 你在会话里让它跑个操作,或者问一句别处有现成答案的问题,界面直接给了个"拒绝"。同一句话发到别的渠道,回答很正

gitblog_00261的博客 1099

Astron Agent 贡献指南:多语言微服务仓库的开发环境搭建、代码质量规范与完整提交流程

Astron Agent 是一个面向下一代 SuperAgent 构建的企业级、可商业化的 Agentic 工作流平台,仓库以微服务方式组织,同时涉及 Java、Go、Python、TypeScript 四种技术栈。本文以仓库根目录 [docs/CONTRIBUTING.md](https://link.gitcode.com/i/69b1b5640a73664210b03c4800617b6c)

gitblog_00043的博客 782

AllData数据中台2026年度技术直播深度解读:数据采集-开发-治理-AI应用全链路闭环与国产信创适配

> 本文依据 [wiki/2026-Community-Meetup.md](https://link.gitcode.com/i/6498daf01f4face84622c43ca20ff062) 中记录的 2026 年 4 月 30 日 AllData(AIIData)数据中台年度技术直播分享会议纪要整理而成。文章以会议披露的公开信息为主体脉络,结合当前开源仓库的模块结构、部署脚本与前端 AP

gitblog_00689的博客 206

Supabase 架构与生态全解:以 PostgreSQL 为核心的开源后端开发平台

Supabase 是一个定位为 “The Postgres development platform” 的开源项目,也就是把云原生 API、认证、实时订阅、文件存储、边缘函数等后端能力全部「长」在一颗专用 PostgreSQL 数据库之上。本文以仓库中[西语版 README(i18n/README.es.md)](https://link.gitcode.com/i/237e687477949d9

gitblog_00940的博客 216

国产开源高性能对象存储RustFS保姆级上手指南

本文详细介绍了基于Rust语言开发的开源高性能分布式对象存储系统RustFS。它作为MinIO的国产化替代方案,完全兼容S3协议,具备高性能、分布式架构、开源安全、轻量级等核心特性,适用于AI/机器学习、大数据分析等多种场景。文章还提供了环境准备、安装配置(包括源码编译和Docker部署两种方式)、基本操作(Web控制台和S3 API操作)等快速上手指南,解答了常见问题,并介绍了其进阶功能、应用场景及学习资源,帮助用户快速上手这一存储解决方案。

weixin_48552411的博客 9051

RustFS是国产的吗?有人用吗?

是国产的,符合信创要求。并且,RustFS 是与 Amazon S3 、阿里云OSS和腾讯云COS兼容的分布式对象存储服务器。它是完全中国自主知识产权,独立开发的,对标MinIO中间件平替的产品。RustFS是高性能分布式对象存储器服务器,专为大型专用云基础结构而设计。使用 Amazon S3 REST API 将持久卷 (PV) 聚集到可扩展的分布式对象存储器中。最适合用于存储非结构化数据,例如,照片、视频、日志文件、备份、VM 和容器映像。

kaiwenli的专栏 4436
上一篇: ansible + docker compose, 实现 RustFS 多机多盘一键部署
下一篇: MinIO 停摆,从 MinIO 到 RustFS 的保姆级迁移教程
rustfs
博客等级 码龄1年 21粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值