![](/uploads/ae158e58-e458-46ed-8a03-ecfc0f7c2e31.jpg)
前言
通常在企业中我们会将一些图片,视频,文档等相关数据存储在对象存储中,常见的对象存储服务有阿里云的OSS对象存储、FastDFS分布式文件系统以及公司的私有云平台等等,以便于数据的存储和快速获取。但随着业务的快速发展,我们需要存储一些身份信息用于审核和实名相关的数据,这部分数据较为敏感,因此对于敏感数据的存储我们选择了使用兼容S3协议的开源分布式对象存储-Minio来进行自建服务。
一、简介
二、安装步骤
1.查询minio服务版本
docker search minio
复制代码
![](/uploads/3002e491-0b9f-44fa-b3fd-c512bf952ce0.jpg)
2.拉取minio
执行命令 docker pull minio/minio 下载稳定版本镜像,使用命令 docker images 查看下载的镜像。
docker pull minio/minio
复制代码
![](/uploads/397ea2bb-5eae-4ba6-b479-2daa2b9dae61.jpg)
3.启动
如果是docker安装的,启动命令如下:
docker run -p 9000:9000 --name minio \
-d --restart=always \
-e MINIO_ACCESS_KEY=minio \
-e MINIO_SECRET_KEY=minio@123 \
-v /usr/local/minio/data:/data \
-v /usr/local/minio/config:/root/.minio \
minio/minio server /data --console-address ":9000" --address ":9090"
复制代码
如果是linux版安装的,启动命令如下:
./minio server /usr/local/minio/data --console-address ":9090"
复制代码
启动成功,IP+9000访问,我顿时傻逼了????
![](/uploads/c0ebcd2d-ff31-4f8d-a9c2-2f05e358b56c.jpg)
最新版长成这样了???心里奔溃啊,那个简洁的界面没了,我们需要安装以前的版本,所以您是在我写这篇文章之后才安装的minio,千万别装最新版的了,别用这个命令了:
docker pull minio/minio
![](/uploads/db0fefc1-f4e6-4468-9f9c-c27715c689e7.jpg)
4.docker hub下载其他版本
hub.docker.com/r/minio/min…
安装今年七月份以前的稳定版本。
docker pull minio/minio:RELEASE.2021-06-17T00-10-46Z-28-gac7697426
复制代码
![](/uploads/006983d3-928b-4939-80d0-6d08e1ab698e.jpg)
![](/uploads/82aad21e-a13f-4732-94e7-233abc77e787.jpg)
1、启动测试
docker run -p 9000:9000 minio/minio:RELEASE.2021-06-17T00-10-46Z-28-gac7697426 server /data
复制代码
![](/uploads/fde6bd47-85fb-4747-90a8-87c4857a6f7a.jpg)
心态爆炸啊,这个版本也不行,我们继续找下一个版本。
![](/uploads/4ec8f179-d636-4cb8-8641-01923ec06de2.jpg)
三、下载安装旧版本
1、下载旧版本
通过以上的坑,我们发现minio的版本更新迭代特别快,最新版本的已经变得面目全非,不认识了。我查阅了最新官网发布版本。
![](/uploads/b4412cbc-034e-41bf-b1fb-22dd4469f690.jpg)
大大小小已经发布了200多个版本了,我们继续找下一个版本, 2021年6月17号的 。
![](/uploads/72a98805-838c-4389-9a28-e9e8ef73d10d.jpg)
docker pull minio/minio:RELEASE.2021-06-17T00-10-46Z
复制代码
![](/uploads/4b17587e-5ad5-446b-9d9d-23ad6fbeada3.jpg)
2、启动
docker run -p 9000:9000 minio/minio:RELEASE.2021-06-17T00-10-46Z server /data
复制代码
![](/uploads/000d7b37-fe54-4d61-9c49-0a4ce017be59.jpg)
看到这里我暗自大喜,终于填满了这个坑。
3、访问测试
输入IP+9000访问web页面:
![](/uploads/00b821cb-9d40-425f-be60-fe0801c6a57b.jpg)
还是熟悉的味道啊,真香!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
![](/uploads/9fda9b71-d4c7-4bcd-be52-79957e8768ca.jpg)
3、MinIO自定义Access和Secret密钥
docker run -p 9000:9000 minio/minio server /data
复制代码
MinIO 需要一个持久卷来存储配置和应用数据。不过, 如果只是为了测试一下, 您可以通过简单地传递一个目录(在下面的示例中为/ data)启动MinIO。这个目录会在容器启动时在容器的文件系统中创建,不过所有的数据都会在容器退出时丢失。
所以我们在工作中,真正的开发中,不能这么干,以上命令仅供测试使用,那么在工作当中应该注意什么呢?首先你的key 和 secret是哼重要的,就相当于你的账号密码,不要设置的那么简单,还有就是你的文件存放,假设服务宕机了,文件也不丢失,服务迁移了,文件也能跟着迁移,这才是工作中应当注意的地方。
要覆盖MinIO的自动生成的密钥,您可以将Access和Secret密钥设为环境变量。 MinIO允许常规字符串作为Access和Secret密钥。
docker run -p 9000:9000 --name minio\
-e "MINIO_ACCESS_KEY=admin" \
-e "MINIO_SECRET_KEY=admin1973984292@qq.com" \
-v /usr/local/minio/data:/data \
-v /usr/local/minio/config:/root/.minio \
minio/minio:RELEASE.2021-06-17T00-10-46Z server /data
复制代码
/usr/local/minio/data // 数据卷存放路径(自行添加)
/usr/local/minio/config //服务配置文件(自行添加)
复制代码
再次启动之后,我们就可以发现重新登录,就可以使用我们自己的Access和Secret密钥了。
![](/uploads/ce469fa0-1a2e-4fcf-b12c-22f09cff08a6.jpg)
新建一个存储桶,往里面添加一个文件:
![](/uploads/0263da62-a3b2-4794-b3cd-eadba042c533.jpg)
上传成功之后,我们去到我们的服务data数据卷存储位置,查看文件是否存在。
![](/uploads/24c7d976-d09d-4134-afc3-5af44d776f50.jpg)
4、MinIO后台的方式启动
如果要后台运行 加入 -d 参数
docker run -d -p 9000:9000 --name minio\
-e "MINIO_ACCESS_KEY=admin" \
-e "MINIO_SECRET_KEY=admin1973984292@qq.com" \
-v /usr/local/minio/data:/data \
-v /usr/local/minio/config:/root/.minio \
minio/minio:RELEASE.2021-06-17T00-10-46Z server /data
复制代码
![](/uploads/1d474774-3f6b-40f5-99f4-b39cbe865f88.jpg)
另外小编给大家一个中文文档方便学习Minio:
总结
好了,今天的文章就收尾了,在安装Minio的过程中,特别艰辛,最新版本实在巨坑,小编走了,不少弯路,喜欢的点赞,评论!!!!!
原文地址: