Docker安装最新MinioClient,还附带解决如

背景:

这两天在整理知识点,然后在学习Minio,一开始遇到更新,整了我不少时间,之前用的太久了,改了不少东西。用了之后发现不知道怎么设置成永久访问,就出了这篇文章。

封面地点:不知道

作者:银恒

1、Docker安装最新版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]
复制代码

==解释:==

  1. ALIAS: 别名就是给你的云存储服务起了一个短点的外号。
  2. S3 endpoint,access key和secret key是你的云存储服务提供的。
    • endpoint http://ip:9000
    • access key、secret key 到这里大家肯定都知道啦。
  3. 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…

自言自语

让我们一起加油学下去吧,竟然已经走在路上啦。👩‍💻👩‍💻
🛌 躺平啦。