背景:
这两天在整理知识点,然后在学习Minio,一开始遇到更新,整了我不少时间,之前用的太久了,改了不少东西。用了之后发现不知道怎么设置成永久访问,就出了这篇文章。
封面地点:不知道
作者:银恒
2、SpringBoot集成Minio 👩💻
一、Docker 搜索minio/mc 镜像
🥳~
docker search minio
二、Docker 拉取minio/mc 镜像
docker pull minio/mc
要用就用最新的哈,直接冲。(默认不指定版本,拉取是拉取最新的)。
(我是不会讲是我懒的去查版本号啦👨💻👨💻)
🏄♂️🏄♀️
三、Docker 启动 minio/mc容器
docker run -it --entrypoint=/bin/sh minio/mc
启动之后 会直接 进入 sh-4.4# 输入==mc version== 查看版本信息
🤸♂️🤸♀️
四、minio/mc 绑定 minio server服务
mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY> [--api API-SIGNATURE]
==解释:==
- ALIAS: 别名就是给你的云存储服务起了一个短点的外号。
- S3 endpoint,access key和secret key是你的云存储服务提供的。
- endpoint http://ip:9000
- access key、secret key 到这里大家肯定都知道啦。
- API签名是可选参数,默认情况下,它被设置为"S3v4"。
举个栗子哈 🙋♀️
# 从MinIO服务获得URL、access key和secret key。
mc config host add minio http://47.113.227.254:9000 AKIAIOSFODNN7EXAMPLE wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY --api S3v4
如果绑定成功的话: 会出现下面这句话。
查看一下绑定的minio server 是否成功:
通过下面命令查看所用的桶
mc ls minio
注: 这里的minio 是我们刚刚取的别名。
🏋️♂️🏋️♀️
五、mc相关命令
| 命令 | 作用 |
|---|---|
| ls | 列出文件和文件夹 |
| mb | 创建一个存储桶或一个文件夹 |
| cat | 显示文件和对象内容 |
| pipe | 将一个STDIN重定向到一个对象或者文件或者STDOUT |
| share | 生成用于共享的URL |
| cp | 拷贝文件和对象 |
| mirror | 给存储桶和文件夹做镜像 |
| find | 基于参数查找文件 |
| diff | 对两个文件夹或者存储桶比较差异 |
| rm | 删除文件和对象 |
| events | 管理对象通知 |
| watch | 监听文件和对象的事件 |
| policy | 管理访问策略 |
| session | 为cp命令管理保存的会话 |
| config | 管理mc配置文件 |
| update | 检查软件更新 |
| version | 输出版本信息 |
💅🤝
六、官方文档
七、设置公开访问 永久访问链接
mc policy set public minio/commons # 将minio 下 commons 桶设置为 公开的 可以永久访问
mc policy set public minio/桶名
注: 通过这样改成永久访问,成功是肯定可以成功的,我这里是弄的小demo,不存在什么考虑安全不安全的问题。
但是如果是什么私密的项目,为了安全的话还是不建议这样子。
注意:==外部访问的链接不需要再用minio的API生成,需要自己拼接出来。==
直接是: http:ip地址:9000/bucket/文件名.后缀
示例:http://IP:9000/commons/2021/07/25/2ea65db733844f3f85bca1346f943a3e.jpg 👨🚀🦸♀️🙋♀️
八、设置永久下载链接
** 配置策略命令查看**: mc policy
mc policy set download minio/test
mc policy set public minio/test
这个命令的作用是将 server 端的 mybucket 桶设置为开放管理,可以直接通过 url 进行下载。
[桶名]/[路径]可以一直拼接到具体的文件夹或文件
类似于以下 xxx.xxx.xxx.xxx:9000/mybucket/xx…
自言自语
让我们一起加油学下去吧,竟然已经走在路上啦。👩💻👩💻 🛌 躺平啦。