MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,这篇文章分享下使用Docker搭建一个单磁盘实例的minio对象存储服务。
Docker搭建minio server
在开始之前,请确保您已经安装好Docker环境,复制下面的命令执行:
docker run -d -p 9000:9000 \
-p 9001:9001 \
--name minio \
-v /home/data:/data \
-e "MINIO_ROOT_USER=xxx" \
-e "MINIO_ROOT_PASSWORD=xxx" \
-e MINIO_DOMAIN="xxx.com" \
--restart=always \
minio/minio server /data --console-address ":9001"
上述参数含义如下:
9000数据通讯端口,比如您通过客户端或API上传对象时使用的端口
/home/data 为本地挂载路径
MINIO_ROOT_USER 设置用户名
MINIO_ROOT_PASSWORD 设置密码
MINIO_DOMAIN 设置域名,创建桶后直接解析到ip 域名为 桶名.xxx.com
–console-address “:9001″为WEB访问端口
域名的作用
默认情况下,如果要访问某个对象,地址为:http://IP:9001/bucket/xxx.txt,如果您在搭建的时候添加了域名参数MINIO_DOMAIN,域名做好解析后,您可以使用这样的方式访问到对象:http://bucket.xxx.com/1.txt,相当于就是将bucket映射为主机名称(域名前缀)
设置公开访问和防止目录列表
进入Buckets
默认 Access Policy: private 点击private 选择 public 切换为公共访问
再次点击public 切换 custom
删除”s3:ListBucket”,
多机容灾 站点复制 设置
通过面板 http://*.*.*.*:9001/settings/site-replication
This Site 本网站
Peer Sites 对等站点
Endpoint 端点 http://*.*.*.*:9000
Access Key docker MINIO_ROOT_USER
Secret Key docker MINIO_ROOT_PASSWORD