MinIO 是一个开源对象存储服务,兼容亚马逊S3云存储服务接口,非常适合于存储如图片、备份数据和虚拟机镜像等大容量非结构化的数据,一个对象文件可以是任意大小,从几kb到最大5T不等。
MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合.
服务端的使用
对接对象存储
minio可以对接azure,gcp,aws s3,阿里云,还有b2 cloud.
这里以对接 b2 cloud 为例 , 在部署完成后即可访问 http://[IP地址]:9000
进行查看,上传等操作.
登录网页的Access和Secret密钥,就是docker运行输入时的MINIO_ACCESS_KEY
和 MINIO_SECRET_KEY
的值
1 | docker run -p 9000:9000 --name b2-s3 -e "MINIO_ACCESS_KEY=b2_account_id" -e "MINIO_SECRET_KEY=b2_application_key" minio/minio gateway b2 |
1 | # 使用二进制文件进行对接 |
使用服务器空间作为存储
1 | docker run -p 9000:9000 --name minio1 -v /mnt/data:/data -v /mnt/config:/root/.minio minio/minio server /data |
1 | docker run -p 9000:9000 --name minio1 -e "MINIO_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE" -e "MINIO_SECRET_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" -v /mnt/data:/data -v /mnt/config:/root/.minio minio/minio server /data |
客户端的使用
1 | docker run -it --entrypoint=/bin/sh minio/mc |
客户端通过 docker 运行后即可使用 mc config
等命令
1 | mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY> <API-SIGNATURE> #<ALIAS>就是给你的云存储服务起了一个名字,类似于docker中的 ``--name=`` ,S3 endpoint,access key和secret key是你的云存储服务提供的。API签名是可选参数,默认情况下,它被设置为"S3v4"。 |
可用命令
1 | ls 列出文件和文件夹。 |
参考
https://docs.min.io/cn/minio-docker-quickstart-guide.html
https://www.moerats.com/archives/643/
https://theo.im/blog/2017/10/17/use-minio-with-aliyun-oss/ https://archive.fo/AFGbN
https://github.com/minio/minio/pull/5103
https://github.com/minio/minio/blob/master/docs/gateway/b2.md