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搭建私有化对象存储服务

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

2594

2023.09.01

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

1622

2023.10.11

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

1509

2023.10.11

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

952

2023.10.23

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

1417

2023.10.23

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

1234

2023.11.03

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1447

2023.11.09

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1306

2023.11.13

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

27

2026.01.16

热门下载

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

精品课程

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

共48课时 | 1.8万人学习

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

共3课时 | 0.3万人学习

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

共1课时 | 793人学习

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

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