前提

我也是今天才用这个技术, 之前没有用过, 在做项目的时候, 本来二级平台(IOT)说的是直接推送图片的URL给到我的, 但是应为一些网路原因, 导致了二级平台在局域网, 并且不允许直接暴露在互联网上, 所以改为图片转Base64推送给我, 本来我计划的方案是, 在一级平台上部署一个Nginx, 然后一级平台往Nginx的暴露文件夹下写图片, 通过Nginx做静态资源的Http请求的访问

架构图

01-Linux部署MinIo_推送

但是这样在开发环境是没有问题的, 但是在生产环境就有问题了, 因为直接写入Nginx的本地磁盘,会存在单点问题, 如果是多台的话, 虽然有办法可以做到访问, 但是会有数据割裂的问题, 一旦某节点数据丢失, 那么是没办法恢复的,

后来和运维聊完之后, 说是有现成的对象存储服务, MinIo

MinIo简介

多 云对象存储

MinIO 提供高性能、兼容 S3 的对象存储。
MinIO 原生于 Kubernetes,是 每个公共云、每个 Kubernetes 发行版、私有云和
边缘上唯一可用的对象存储套件。MinIO 是软件定义的,在 GNU AGPL v3 下是 100% 开源的。

MinIo单击版部署

官网

https://min.io/

下载

01-Linux部署MinIo_推送_02

里面提供了很多种的部署方式, 包含沙箱和原生等

01-Linux部署MinIo_推送_03

部署

我是直接基于Linux部署的

01-Linux部署MinIo_nginx_04

里面的命令直接粘贴就可以

01-Linux部署MinIo_nginx_05

访问页面

访问地址

http://192.168.247.130:9001/login

输入用户名和密码

MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=password

01-Linux部署MinIo_nginx_06

第一次是没有Bucket的需要自己创建

创建Bucket

01-Linux部署MinIo_推送_07

其他功能自行探索

设置为公开的

01-Linux部署MinIo_对象存储_08

01-Linux部署MinIo_nginx_09

设置权限为读写

01-Linux部署MinIo_nginx_10

创建用户

01-Linux部署MinIo_推送_11

分配权限

01-Linux部署MinIo_对象存储_12

在存储桶的用户中能看到就可以

01-Linux部署MinIo_nginx_13

也可以使用新的用户登录, 到此部署结束, 当然只是单机版的, 集群就交给运维吧