学习不走弯路,通过 《mall视频教程(2023最新版)》 ,使用更系统、高效的方式来学习mall电商实战项目吧!
在我们平时做项目的时候,文件存储是个很常见的需求。这时候我们就会用到对象存储服务,平时我们可能会选择OSS、AWS S3这类第三方服务。今天带大家搭建一款自己的对象存储服务,带可视化管理,用起来也挺简单!
MinIO 是一款基于Go语言的高性能对象存储服务,在Github上已有28K+Star。它采用了Apache License v2.0开源协议,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等。
使用Docker安装MinIO服务非常简单,几个命令就可以搞定!
docker pull minio/minio
--console-address
docker run -p 9090:9000 -p 9001:9001 --name minio \ -v /mydata/minio/data:/data \ -e MINIO_ROOT_USER=minioadmin \ -e MINIO_ROOT_PASSWORD=minioadmin \ -d minio/minio server /data --console-address ":9001"
minioadmin:minioadmin
MinIO Console是MinIO自带的可视化管理工具,比起上一代的可视化工具功能还是强大了不少的,下面我们来体验下这个工具。
其实对于对象存储来说,MinIO Console的功能还是不够用的,所以官方还提供了基于命令行的客户端MinIO Client(简称mc),下面我们来讲讲它的使用方法。
我们先来熟悉下mc的命令,这些命令和Linux中的命令有很多相似之处。
由于MinIO服务端中并没有自带客户端,所以我们需要安装并配置完客户端后才能使用,这里以Docker环境下的安装为例。
docker pull minio/mc
docker run -it --entrypoint=/bin/sh minio/mc
mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY>
mc config host add minio http://192.168.7.142:9090 minioadmin minioadmin
# 查看存储桶 mc ls minio # 查看存储桶中存在的文件 mc ls minio/blog
test
mc mb minio/test
avatar.png
mc share download minio/blog/avatar.png
blog
mc find minio/blog --name "*.png"
只读
# 目前可以设置这四种权限:none, download, upload, public mc policy set download minio/test/