其他分享
首页 > 其他分享> > Minio 安装与使用

Minio 安装与使用

作者:互联网

目录


Minio 安装以及使用---走看看

minio 安装部署及使用---CSDN


1. minio 简介

minio 是一个基于 Apache License V2.0 开源协议的对象存储服务

2. 基础概念

3. minio server 二进制安装使用

3.1 下载

wget https://dl.min.io/server/minio/release/linux-amd64/minio
或者
wget http://49.232.8.65/minio/minio

3.2 创建安装目录并启动

mkdir -p /home/minio/data
chmod +x minio
cp minio /home/minio/data
export MINIO_ACCESS_KEY=minioadmin   #创建账号
export MINIO_SECRET_KEY=minioadmin   #创建密码
./minio server /home/minio/data      #启动

后台启动,并打印日志

# 默认端口 9000
nohup ./minio server /home/minio/data > /home/minio/data/minio.log &

# 自定义端口方式:自定义启动端口号以及控制台端口号,不设置则控制台会自动配置其他端口号,非常不方便
nohup ./minio server  --address :9000 --console-address :9001 /home/minio/data > /home/minio/data/minio.log &
[root@c7-1 ~]#ll /home/minio/data/minio 
-rwxr-xr-x 1 root root 96595968 7月  25 11:02 /home/minio/data/minio
[root@c7-1 ~]#nohup /home/minio/data/minio server /home/minio/data > /home/minio/data/minio.log &
[1] 64808
[root@c7-1 ~]#nohup: 忽略输入重定向错误到标准输出端

[root@c7-1 ~]#ps -ef | grep minio
root      64808  64123  4 11:03 pts/0    00:00:00 /home/minio/data/minio server /home/minio/data
root      64830  64123  0 11:04 pts/0    00:00:00 grep --color=auto minio

3.3 进行访问,并设置 bucket

http://192.168.10.20:9000

输入账号密码:minioadmin/minioadmin
创建桶:名字自取,创建完成后服务器 /home/minio/data 下也会创建这个文件目录
在这里插入图片描述
在这里插入图片描述

3.4 上传文件

在这里插入图片描述
在这里插入图片描述

3.5 设置规则

必须将规则设置成 readwrite,否则只能存或者只能读。前缀需要设置为 *.*,否则会无法访问,设置完成后,我们只需要通过拷贝链接中的前一串路径即可永久访问该文件。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.6 查看 bucket 目录

  进入服务器 /home/minio/data 目录,文件桶 test 相当于文件目录,这里没有使用纠删码的模式,所以直接就是源文件了。当我们线上运行的项目已经有源文件了,在使用 minio 的时候,可以直接指定该目录为 minio 的文件目录就行了。

[root@c7-1 ~]#cd /home/minio/data/
[root@c7-1 /home/minio/data]#ls
minio  minio.log  test
[root@c7-1 /home/minio/data]#cd test/
[root@c7-1 /home/minio/data/test]#ls
8aa6e5ded048b04f39cb9b56d3682397.jpg

3.7 分享链接

  点击分享将生成文件的访问 URL 地址,以指定链接的有效时间,有效时间最多 7 天,最小的单位是分钟。在有效时间过期后在访问图片时,会提示失效。
在这里插入图片描述
在这里插入图片描述

# 可以将加密字符串去掉下载
[root@c7-1 ~]#wget http://192.168.10.20:9000/test/8aa6e5ded048b04f39cb9b56d3682397.jpg
--2022-07-25 13:25:44--  http://192.168.10.20:9000/test/8aa6e5ded048b04f39cb9b56d3682397.jpg
正在连接 192.168.10.20:9000... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:135546 (132K) [image/jpeg]
正在保存至: “8aa6e5ded048b04f39cb9b56d3682397.jpg”

100%[========================================================================================================================================================================>] 135,546     --.-K/s 用时 0.001s  

2022-07-25 13:25:44 (114 MB/s) - 已保存 “8aa6e5ded048b04f39cb9b56d3682397.jpg” [135546/135546])

[root@c7-1 ~]#ls
8aa6e5ded048b04f39cb9b56d3682397.jpg

4. docker 安装 minio server

4.1 拉取镜像

docker pull minio/minio
docker images | grep minio

4.2 运行镜像

docker run --name minio -p 9000:9000 -p 9001:9001 \
-v /etc/localtime:/etc/localtime \
-v /data/minio/data:/data \
-v /data/minio/config:/root/.minio \
-d minio/minio server /data \
--console-address ":9001" --address ":9000"

指定 api 端口和 console 端口。console 端口 9001 是给后台页面使用的,api 端口 9000 则是我们需要集成到后台项目中用到的,比如集成到 springboot 中,配置里面用到的端口就是 9000。

指定账号密码

docker run --name minio -p 9000:9000 -p 9001:9001 \
-e "MINIO_ROOT_USER=minioadmin" \
-e "MINIO_ROOT_PASSWORD=minioadmin" \
-v /etc/localtime:/etc/localtime \
-v /data/minio/data:/data \
-v /data/minio/config:/root/.minio \
-d minio/minio server /data \
--console-address ":9001" --address ":9000"

查看日志

docker ps -a | grep minio
docker logs -f minio

# ----------------查看 console 和 API -------------------
[root@c7-1 ~]#docker logs -f minio
WARNING: Detected Linux kernel version older than 4.0.0 release, there are some known potential performance problems with this kernel version. MinIO recommends a minimum of 4.x.x linux kernel version for best performance
MinIO Object Storage Server
Copyright: 2015-2022 MinIO, Inc.
License: GNU AGPLv3 <https://www.gnu.org/licenses/agpl-3.0.html>
Version: RELEASE.2022-07-24T17-09-31Z (go1.18.4 linux/amd64)
Status:         1 Online, 0 Offline. 
API: http://172.17.0.2:9000  http://127.0.0.1:9000     
Console: http://172.17.0.2:9001 http://127.0.0.1:9001   
Documentation: https://docs.min.io

监控容器

docker stats minio

4.3 浏览器访问

http://192.168.10.20:9001
账号密码:minioadmin/minioadmin

在这里插入图片描述

5. minio client 安装使用

虽然 MinIO 的网页端管理已经很方便了,但是官网还是给我们提供了基于命令行的客户端 MinIO Client(简称 mc),下面我们来讲讲它的使用方法。

5.1 常用命令

MinIO Client (mc) 为 ls,cat,cp,mirror,diff,find 等 UNIX 命令提供了一种替代方案。它支持文件系统和兼容 Amazon S3 的云存储服务(AWS Signature v2和v4)。MinIO 服务端中并没有自带客户端,所以我们需要安装配置完客户端后才能使用。

命令 作用
ls 列出文件和文件夹
mb 创建一个存储桶或一个文件夹
cat 显示文件和对象内容
pipe 将一个STDIN重定向到一个对象或者文件或者STDOUT
share 生成用于共享的URL
cp 拷贝文件和对象
mirror 给存储桶和文件夹做镜像
find 基于参数查找文件
diff 对两个文件夹或者存储桶比较差异
rm 删除文件和对象
events 管理对象通知
watch 监听文件和对象的事件
policy 管理访问策略
session 为cp命令管理保存的会话
config 管理mc配置文件
update 检查软件更新
version 输出版本信息

5.2 下载 minio client image

docker search minio
docker pull minio/mc

5.3 运行

启动之后会直接进入 sh-4.4#

docker run -it --entrypoint=/bin/sh minio/mc	

输入mc version 查看版本信息

[root@c7-1 ~]#docker run -it --entrypoint=/bin/sh minio/mc
sh-4.4# mc version
mc: Configuration written to `/root/.mc/config.json`. Please update your access credentials.
mc: Successfully created `/root/.mc/share`.
mc: Initialized share uploads `/root/.mc/share/uploads.json` file.
mc: Initialized share downloads `/root/.mc/share/downloads.json` file.
NAME:
  mc version - manage bucket versioning
......

5.4 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,账号密码 minioadmin/minioadmin。
API 签名是可选参数,默认情况下,它被设置为 "S3v4"。

示例

### 注意端口,用的是 API 端口
sh-4.4# mc config host add minio http://192.168.10.20:9000 minioadmin minioadmin           
Added `minio` successfully.
sh-4.4# mc ls minio
[2022-07-25 06:11:32 UTC]     0B test/
sh-4.4# mc ls minio/test
[2022-07-25 06:12:38 UTC] 181KiB STANDARD sun.jpg

5.5 创建存储桶

mc mb minio/dnps                             #创建一个名为 dnps 的存储桶
mc share download minio/test/small.jpg       #共享 test 桶下 small.jpg 文件的下载路径
mc find minio/test --name "*.jpg"            #查找 test 存储桶中的 jpg 文件
mc policy set download minio/dnps/           #设置权限:none, download, upload, public
mc policy list minio/dnps/                   #查看存储桶当前权限
mc cp minio/test/small.jpg   minio/dnps/     #拷贝文件和对象

标签:minio,mc,home,data,9000,使用,root,安装,Minio
来源: https://www.cnblogs.com/shenyuanhaojie/p/16518243.html