20-1-Minio技术调研(实现)

YangeIT大约 4 分钟

20-1-Minio技术调研(实现)

1.如何调研

​ 参考官网上的内容,官网地址如下:https://docs.min.io/open in new window

2.如何学习技术

什么是MinIO?

MinIO 是在 GNU Affero 通用公共许可证 v3.0 下发布的。它与 Amazon S3 云存储服务 API 兼容。使用 MinIO 为机器学习、分析和应用程序数据工作负载构建高性能基础架构。

​ MinIO是,什么是对象存储(Object Storage Service)?,对象存储是支持海量用户远程访问的无限容量廉价存储系统,既然是存储系统。它由bucket,对应Windows下的文件夹),组成目录结构,桶中直接存放对象(Object,对应Windwos下的文件),,但是能创建文件夹

MinIO怎么用?

进入下载页面点击windows

​点击下载服务端

​ 这边老师已经给同学们下载好了在今天的资料里,同学们就不要再自行下载了👍 👍 👍

将MinIO.exe 拷贝到自己的目录下去,并创建一个data目录

通过命令行启动Minio

# 启动命令
minio server ./data

​ 启动完成后,可以看到访问的路径http://127.0.0.1:9000open in new window

使用提供的账号密码进行登录

账号:minioadmin 密码:minioadmin

说明minio已经正常启动了 🎉 🎉 🎉

3.MioIO的使用

由于我们已经了解到MinIO是由桶(bucket)组成的,相当于是文件夹

  1. 创建桶bucket
  • 创建桶
  1. 创建名叫huike-crm的桶
  • 创建好桶之后看到如下内容
  1. 先尝试通过MinIO的控制台上传一个文件
  • 上传一个java.png
  • 点击上传的文件并生成分享的链接
  • 点击copy拷贝生成分享的url
http://172.16.17.121:9000/huike-crm/java.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=KGWTGVTCK8G5MV01HQ5A%2F20220318%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20220318T081644Z&X-Amz-Expires=604800&X-Amz-Security-Token=eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3NLZXkiOiJLR1dUR1ZUQ0s4RzVNVjAxSFE1QSIsImV4cCI6MTY0NzU5MzU4MSwicGFyZW50IjoibWluaW9hZG1pbiJ9.BdsOeJp6v1zPUPTH79Eb4u_Mf_f8eG0Pvwd8IewMdI1mJGSzqYnJxaP3SKV_-c4AtoIYBJBT_4zh2N3AYYFOUw&X-Amz-SignedHeaders=host&versionId=null&X-Amz-Signature=c3205a0361341505aa4107655716c4e71a47dd40606bd4e03033138fbd6b7c96

在浏览器里访问,可以看到上传的图片

可以看到图片里的内容,证明minio已经可以正常使用了 🎉 🎉 🎉

⚠️但是,存在一些问题,我们生成一个分享url的时候发现有一个有效期

也就是说我们生成的分享的url的有效期只有7天 ,过了这7天以后再想通过这个url来进行访问就会有问题

我们能否直接将上传上来的文件暴露出去,而不再需要通过分享的这个url来进行访问呢?

如果现在我们要直接访问我们的MinIO里的文件要如何访问

我们应该直接访问 Minio的ip+端口/桶名称/文件名

http://172.16.17.121:9000/huike-crm/java.pngopen in new window

我们在浏览器中尝试了一下

看到返回的数据的内容,没有权限

注意这里的权限的配置是在桶这一级别的

添加读取readOnly对应的权限是* 即拥有所有权限 👈

然后重新范围java.png

http://172.16.17.121:9000/huike-crm/java.pngopen in new window

到此对minio的配置全部结束 🆗