0

0

使用minio搭建私有化对象存储服务

爱谁谁

爱谁谁

发布时间:2025-09-13 08:33:07

|

244人浏览过

|

来源于php中文网

原创

在工作中,我们常常会接触到对象存储服务,但这些服务大多是云服务。对于需要对外开放的项目而言,这类服务是可行的。然而,当我们需要私有化部署时,如何继续使用对象存储呢?

这里介绍一个开源项目MinIO,使用它,我们可以轻松搭建属于自己的私有云服务。

MinIO是一个非常轻量级的服务,可以简单地与其他应用程序(如NodeJS、Redis或MySQL)集成。

安装(Linux平台)

# 下载
wget https://dl.min.io/server/minio/release/linux-amd64/minio
# 为了便于管理,我们将文件移动到/usr/local下
mv minio /usr/local/minio
# 修改权限
cd /usr/local/minio/
chmod 755 minio

接下来,我们先不进行任何配置,直接启动服务:

./minio server /data

启动后,我们可以看到输出,显示了默认的AccessKey和SecretKey分别是什么,以及访问地址,端口为9000。这些地址都是内网地址,如果需要公网访问,需要自己配置防火墙开放对应的端口,默认端口为9000。如果使用云服务器,需要在控制台修改安全组,添加一条安全策略。

在输出信息的最下面,还能看到一条警告,提醒我们检测到使用了默认的认证凭据,建议立即修改,并提供了两个配置项。

这里还需要说明一下,我们可以使用进程管理工具让其在后台运行。

Endpoint:  http://172.31.108.28:9000  http://127.0.0.1:9000
AccessKey: minioadmin 
SecretKey: minioadmin 
Browser Access:   http://172.31.108.28:9000  http://127.0.0.1:9000
Command-line Access: https://docs.min.io/docs/minio-client-quickstart-guide   
$ mc config host add myminio http://172.31.108.28:9000 minioadmin minioadmin
Object API (Amazon S3 compatible):   
Go:         https://docs.min.io/docs/golang-client-quickstart-guide   
Java:       https://docs.min.io/docs/java-client-quickstart-guide   
Python:     https://docs.min.io/docs/python-client-quickstart-guide   
JavaScript: https://docs.min.io/docs/javascript-client-quickstart-guide   
.NET:       https://docs.min.io/docs/dotnet-client-quickstart-guide
Detected default credentials 'minioadmin:minioadmin', please change the credentials immediately using 'MINIO_ACCESS_KEY' and 'MINIO_SECRET_KEY'

我们暂时先不修改任何配置,直接访问IP:9000看看效果。

使用minio搭建私有化对象存储服务

通过上面输出的提示我们知道默认的AccessKey和SecretKey是minioadmin,直接输入:

使用minio搭建私有化对象存储服务

这就是主界面了,点击右下角的加号,可以看到有上传文件和创建bucket的选项。

使用minio搭建私有化对象存储服务

先创建一个bucket,然后回车,选择对应的bucket,上传文件。

使用minio搭建私有化对象存储服务

到这里,我们对MinIO有了简单的了解,接下来我们要修改配置,因为默认的认证凭据是不安全的。

citySHOP多用户商城系统
citySHOP多用户商城系统

citySHOP是一款集CMS、网店、商品、分类信息、论坛等为一体的城市多用户商城系统,已完美整合目前流行的Discuz! 6.0论坛,采用最新的5.0版PHP+MYSQL技术。面向对象的数据库连接机制,缓存及80%静态化处理,使它能最大程度减轻服务器负担,为您节约建设成本。多级店铺区分及联盟商户地图标注,实体店与虚拟完美结合。个性化的店铺系统,会员后台一体化管理。后台登陆初始网站密匙:LOVES

下载

文档中提示(机翻自英文文档,中文文档已经很久不更新了,建议直接读英文):

您可以使用--config-dir指定现有配置的位置,MinIO会将config.json迁移到您的后端存储。成功迁移后,当前config.json将重命名为当前--config-dir中不推荐使用的config.json.deprecated。迁移后,所有现有配置都将得到保留。

此外,--config-dir现在是旧选项,计划在将来删除,因此请相应地更新本地启动和可访问的脚本。

/data/.minio.sys/config/config.json

默认的文件就是上面这个,不过新版本已经不建议直接改配置文件了,而是用环境变量来做配置:

export MINIO_ACCESS_KEY=minio
export MINIO_SECRET_KEY=minio13
./minio server /data

其他的配置需要的时候再做说明,到这里简单的配置就完成了,至于其他的配置比如https,分布式部署,后面有机会再详细说明。

关于Bucket访问策略和阿里云bucket一样,这里的bucket同样可以设置只读,只写,读写。

使用minio搭建私有化对象存储服务

文件分享,默认的分享是有时间限制的,最大七天,可以通过下图看出来,如果想突破这种限制,可以在bucket中进行策略设置。点击对应的bucket,edit policy添加策略*.,Read Only,这样就可以直接访问了,没有时间限制,同时只需要按http://${MINIO_HOST}:${MINIO_PORT}/${bucketName}/${fileName}则可直接访问资源(不需要进行分享操作)。

使用minio搭建私有化对象存储服务使用minio搭建私有化对象存储服务

# 修改为策略之后可以直接这样访问,否则直接跳转到我们的登录界面(我们可以在配置里面关闭掉浏览器直接访问对象存储)
http://XXX.X.X.X:9000/test1/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20200527140551.png

在HTML文件中作为静态资源来引用:

@@##@@

之后我会在后面的文章里使用PHP来进行文件操作,并且搭配ImageMagick以及FFmpeg来实现处理图片以及视频的需求。

参考资料:

Minio官方中文文档

利用 MinIO 轻松搭建静态资源服务

使用minio搭建私有化对象存储服务

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

668

2023.06.20

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

247

2023.06.21

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

281

2023.07.18

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

515

2023.07.19

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

256

2023.07.25

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

386

2023.08.08

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

532

2023.08.11

mysql忘记密码
mysql忘记密码

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。那么忘记mysql密码我们该怎么解决呢?php中文网给大家带来了相关的教程以及其他关于mysql的文章,欢迎大家前来学习阅读。

602

2023.08.14

Python 自然语言处理(NLP)基础与实战
Python 自然语言处理(NLP)基础与实战

本专题系统讲解 Python 在自然语言处理(NLP)领域的基础方法与实战应用,涵盖文本预处理(分词、去停用词)、词性标注、命名实体识别、关键词提取、情感分析,以及常用 NLP 库(NLTK、spaCy)的核心用法。通过真实文本案例,帮助学习者掌握 使用 Python 进行文本分析与语言数据处理的完整流程,适用于内容分析、舆情监测与智能文本应用场景。

10

2026.01.27

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
MySQL 教程
MySQL 教程

共48课时 | 1.9万人学习

MySQL 初学入门(mosh老师)
MySQL 初学入门(mosh老师)

共3课时 | 0.3万人学习

简单聊聊mysql8与网络通信
简单聊聊mysql8与网络通信

共1课时 | 812人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号