目录
- 前言
- 搜索镜像
- 找到bitnami/minio镜像
- 拉取镜像
- 查看下载好的镜像
- 创建数据卷目录,并提升权限
- 根据镜像创建一个minio容器
- 参数说明
- 查看 minio 容器的启动日志
- 查看 minio 容器的信息
- 开放安全组端口
- 访问minio
- 进入首页
- 创建桶设置权限
- 上传文件
前言
如果公司想要自己搭建自己的资源服务器,可以考虑minio,minio用户量如果比较低是不收费的,用户量达到千万开始收费,我想如果一个公司的用户达到千万,这点钱还是舍得花的吧,客户端语言也是比较多的,例如java,下面就把我搭建的教程分享下,省的走弯路不是,为了方便我用了docker搭建,但是官网也有其他方式。
官网地址:https://www.minio.org.cn/
搜索镜像
docker search minio
找到bitnami/minio镜像
拉取镜像
docker pull bitnami/minio
查看下载好的镜像
docker images
创建数据卷目录,并提升权限
mkdir -p /minio/data
chmod -R 777 /minio/data
根据镜像创建一个minio容器
docker run -it -d --name minio -p 9000:9000 -p 9001:9001 -v /minio/data:/data -e MINIO_ROOT_USER="minio_root" -e MINIO_ROOT_PASSWORD="minio_123456" bitnami/minio:latest
如果报Error starting userland proxy: listen tcp4 0.0.0.0:9000: bind: address already in use,说明端口被绑定了,切换宿主机的端口,我这边搭建的时候就是被绑定了,我改成下面这样就可以了
docker run -it -d --name minio -p 9008:9000 -p 9009:9001 -v /minio/data:/data -e MINIO_ROOT_USER="minio_root" -e MINIO_ROOT_PASSWORD="minio_123456" bitnami/minio:latest
参数说明
● -it:-i 表示以交互模式运行容器,-t 表示为容器重新分配一个伪输入终端,两个参数必须结合使用才能启动一个容器
● -d:以守护进程方式来启动容器,这也是常用参数,防止阻塞当前窗口
● -p 9000:9000:MinIO 服务会暴露 9000 端口来对外提供对象访问,也就是通过此端口运行的服务来访问资源
● -p 9001:9001:MinIO 服务会提供一个可视化管理系统,默认在 9001 端口运行
● -v /minio/data:/data:挂载数据卷,将 minio 容器内存储的文件映射到宿主机
● -e MINIO_ROOT_USER=“minio_root”:设置 root 用户名
● -e MINIO_ROOT_PASSWORD=“minio_123456”:设置 root 的密码,长度至少 8
在 minio 镜像的文档中提到了:
Make sure that the environment variables MINIO_ROOT_PASSWORD and MINIO_SERVER_SECRET_KEY meet the 8 character minimum length requirement enforced by MinIO®.
也就是通过环境变量 MINIO_ROOT_PASSWORD 设置 root 用户密码时,长度至少为 8 位,这一点需要注意。
查看 minio 容器的启动日志
可以看到一些关键信息
API 也就是对外提供资源存取服务的地址,Console 是控制台,也就是一个后台管理系统。RootUser 是通过环境变量设置的 root 用户名,RootPass 是 root 用户密码。创建容器时没有指定这两个环境变量的话,这里会提供两个默认的值,分别是 minio 和 miniosecret。
查看 minio 容器的信息
docker ps
可以看到容器的 ID,所使用的的镜像,运行状态,端口等信息
开放安全组端口
minio 服务用到了 9000 和 9001 端口,如果使用的是云服务器,需要在安全组中开放端口
访问minio
打开浏览器,访问 域名:9001 或者 IP:9001 ,即可访问 MinIO 服务的管理系统,使用设置好的用户名和密码,登录系统
账号:minio_root
密码:minio_123456
进入首页
进入系统首页,默认展示存储桶列表,由于现在是一个新的服务,所以还是空的
创建桶设置权限
根据提示,点击 “Create a Bucket” 开始创建第一个存储桶
点击按钮即可完成桶的创建,如下,是刚刚创建的存储桶的卡片展示
点击存储桶,进入此桶的概要展示页面
点击访问策略,修改为 Public 公共策略,这样 minio 中的文件才能被外界访问
上传文件
在一个存储桶内,右上角有一个上传的按钮,可以上传文件或者文件夹
文件上传成功后,点击文件可查看文件的详情,文件详情右侧提供了一些常用的功能,比如下载,分享和预览,展示文件的基本信息
上方的路径可以复制下来,拼接上 minio 服务的地址,就是此文件的 URL 了。一定要把桶的访问策略改为 Public,否则访问此 URL 将返回 403。
用API地址端口访问,不要用控制台端口访问
我的访问地址:http://192.168.52.150:9008/nest-minio/ca65f3c1bc6d77dfeda590aead509fd6.jpeg