当前位置: 首页 > news >正文

MinIO 社区版被故意阉割,Web管理功能全面移除,来试试国产的RustFS?

一、MinIO 牺牲开源精神走向商业利益

今天部署好minio后打开web界面发现只剩下纯对象存储:

图来源于小众软件

原因是2月26号的一个PR以“精简控制台”为由删了114736行代码:

而官方这么说:“对于需要图形界面完成管理的场景,请迁移到我们的商业产品(AiStor),社区用户则可以使用 mc 命令行”。网友对此表示强烈谴责 :)

二、寻找平替,尝试RustFS

RustFS 是一个用 Rust 语言构建的高性能分布式对象存储系统,定位为 MinIO 的替代方案。

Rust的安全性和高性能以及Apache 2.0的开源协议是我将它作为MinIO的平替的主要原因。

因为RustFS是比较新的项目,按照官网的docker部署命令有点问题。

但官方在相关 issue 中已经给了解决方案,下面是我结合该方案并使用docker-compose部署成功的实操记录:

2.1. 准备好以下目录结构:
/mnt/rustfs/ ├── data/ └── docker-compose.yml

docker-compose.yml文件内容:

services: rustfs: image:rustfs/rustfs:latest container_name:rustfs ports: -"9000:9000"# API 端口 -"9001:9001"# Console 端口 volumes: -./data:/data# 数据存储 environment: -RUSTFS_ROOT_USER=rustfsadmin -RUSTFS_ROOT_PASSWORD=rustfsadmin -RUSTFS_ADDRESS=:9000 -RUSTFS_CONSOLE_ADDRESS=:9001 -RUSTFS_CONSOLE_ENABLE=true -RUSTFS_LOG=warn restart:unless-stopped
2.2 /mnt/rustfs/目录下启动。

docker-compose up -d启动容器

docker compose ps查看状态:

2.3 开放安全组

如果访问不了记得新增安全组,开放9000/9001的端口:

2.4 测试访问

控制台页面访问9001端口:

默认的账号密码:rustfsadmin/rustfsadmin

2.5 配置https

为了安全考虑,我希望服务只能由https协议通过nginx转发来访问,而不能直接通过ip访问:

首先将docker-compose.yml文件做如下改动:

ports: # - "9000:9000" # API 端口 # - "9001:9001" # Console 端口 - "127.0.0.1:9000:9000" # API 端口 - "127.0.0.1:9001:9001" # Console 端口

然后创建一个子域名rustfs.yourdomain.cn映射到yourdomain.cn:9001,nginx配置如下:

upstream rustfs_console { server localhost:9001; } upstream rustfs_api { server localhost:9000; } # RustFS Console (Web UI) server { listen 443 ssl; server_name rustfs.yourdomain.cn; ssl_certificate /etc/letsencrypt/live/yourdomain.cn-0001/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/yourdomain.cn-0001/privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; location / { proxy_pass http://rustfs_console; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Port $server_port; # WebSocket 支持 proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } } # RustFS API server { listen 443 ssl; server_name rustfsapi.yourdomain.cn; ssl_certificate /etc/letsencrypt/live/yourdomain.cn-0001/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/yourdomain.cn-0001/privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; location / { proxy_pass http://rustfs_api; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } # HTTP 重定向到 HTTPS server { listen 80; server_name rustfs.yourdomain.cn rustfsapi.yourdomain.cn; return 301 https://$server_name$request_uri; }

测试https访问:

总结

随着 MinIO 社区版自 2024 年 2 月起全面移除 Web 管理界面,标志着其加速向商业化闭源演进,对广大习惯图形化管理的用户来说无疑是一种“背刺”。

尽管 MinIO 声称 CLI(如 mc)功能更专业,但对中小企业、个人开发者甚至初学者而言,图形界面不可或缺。

同时,RustFS 作为国产、开源、Rust 编写的分布式对象存储项目,凭借以下优势,已具备成为 MinIO 替代品的潜力:

对比项

MinIO(社区版)

RustFS

开源协议

AGPL v3(限制较多)

Apache 2.0(更宽松)

管理界面

✅ 已被移除(需付费)

✅ 自带 Web 控制台

命令行支持

mc

REST API + 后续工具支持

部署复杂度

简单

较简单,支持 Docker Compose

性能与安全性

高,但维护封闭

Rust 架构,天生安全高效

中文社区与生态支持

较少(商业倾向)

正在建设中

注意:RustFS 项目还处于早期阶段,功能在逐步完善,生产环境部署需做额外验证。

来源:juejin.cn/post/7523256725127987226

http://www.jsqmd.com/news/468815/

相关文章:

  • CW2015电源管理芯片避坑指南:常见问题与解决方案
  • 行测高频成语:安之若素
  • YOLOv8训练-推理一体化:全流程部署指南
  • 养龙虾迅速走红!OpenClaw部署保姆级教程,两步解锁专属龙虾AI助理!
  • 机器人开发工程师:技术核心、挑战与人才甄选
  • 看了500份简历,被HR淘汰的就这3个问题!
  • Nodemailer使用教程:在Node.js中发送电子邮件
  • 3月12日(进阶4)
  • Redis 平替来了!SpringBoot 集成 Dragonfly,性能暴涨 25 倍
  • 今年NVIDIA GTC,将会是VLA、端到端和WAM的高光时刻
  • 请介绍下 C++ 模板中的 SFINAE?它的原则是什么?
  • Flutter 三方库 common_locale_data 的鸿蒙化适配指南 - 实现具备全球化区域元数据与多语言辅助能力的底层数据池、支持端侧国际化业务的精细化治理实战
  • 好奇Clawhub/Skillhub上的插件/Skills(案例一)
  • CMakeLists.txt配置详细介绍
  • openclaw使用笔记,如何启动
  • 图文手把手!小艺接入 OpenClaw 超简单
  • 0311晨间日记
  • 周鸿祎回应“龙虾安全”争议:它是好东西绝非病毒,不发展才是最大安全隐患
  • 搜维尔科技:使用Manus Pro数据手套在实验室远程操控22自由度机械手
  • Flutter 三方库 serial_csv 的鸿蒙化适配指南 - 实现极速的流式 CSV 数据编解码、支持端侧超大规模表格数据的高效序列化实战
  • Flutter 三方库 system_shortcuts 的鸿蒙化适配指南 - 实现快速触发系统级快捷功能、支持 WiFi 开关、亮度调节与系统设置一键直达
  • 小团队开发小 web 项目,使用 PHP 还是 next.js ?
  • python flask django美食短视频分享交流社区系统
  • Matplotlib:tick_params的用法
  • JAVA按模版导出Word文档(无需转换word格式)
  • 50个深蹲,就能练遍整个下半身!
  • 搜维尔科技:SenseGlove R1专为无缝控制人形机器人手而设计,融合了主动力反馈、毫米级手指追踪精度和振动触觉反馈
  • 2026年,济南联想信创服务器供应商究竟哪家强?最新评测为你揭晓答案!
  • the evilness of American English
  • 关于立交中辅助车道设置的探讨