centos7 安装minio

84 阅读4分钟

我不是一个资深高手,只想描述普通人在项目中真正常见的问题,以及我的一些经验!

   项目中,我们经常会遇到上传附件,预览图片,播放视频等需求,这个时候,作为一个实际开发场景,就需要我们搭建文件服务器了,当然技术发展到现在,给到我们的选择已经变得很多了,比如很原始的时候基于nginx 的服务器硬盘直接搭建,搭建ftp服务,搭建minio购买云服务等。

   这边我就不一一列举,我只讲实操,如果是是开发环境,或者是中小型项目,基于目前的实际开发项目经验,如果不愿意购买三方的云存储,比如某里某腾的OSS存储,那么一定选择minio 作为搭建企业级文件服务器的首选!

   minio是什么

     我去百度了一下概念,放在这边

MinIO是一个高性能、分布式的对象存储系统,基于Apache License v2.0开源协议。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等。一个对象文件可以是任意大小,从几kb到最大5T不等。从定义不难看出,minio的特点,开源免费 性能高。

    官网地址:min.io/

  如何搭建minio

   由于个人有时候怕不停安装环境比较麻烦,所以一直有些shell脚本的习惯,我直接把个人shell 脚本分享一下,虽然是很简单的脚本,没有做错误兼容,但是对于初学者还是比较友善的。

    #!/bin/bash

    echo "step one upload minio file ......."

    cd /root/source && wget dl.min.io/server/mini…

    echo "step two install minio ......."

    cp /root/source/minio /root/common/minio && cd /root/common/minio && chmod +x minio

    MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=你的密码 ./minio server /root/common/minio/data  --address :9000 --console-address :9090

    如果纯粹想要搭建一个minio 做个测试,兄弟们直接把你的密码处进行替换,然后将如上内容拷贝到文本中保存,并将文件命名为minio_install.sh,直接在系统中 执行 sh ./minio_install.sh 即可

   对于参数的解释,我一并汇总如下

   MINIO_ROOT_USER:用于可视化操作登录时管理员的账号。[可选]

   MINIO_ROOT_PASSWORD:用于可视化操作登录时管理员的密码。[可选]

   minio server : 服务启动。[必选]

   dataPath: 文件存储路径,该路径可以为节点的网址/真实的路径。[必填]

   --address :: 文件服务的端口号,默认为9000。[可选]

  --console-address ::可视化界面的端口号,默认为随机。[可选]

   执行命令启动成功之后,浏览器访问http://localhost:9090就可以访问minio的图形化界面了,这边的9090 是命令中指定的9090端口,我截取了之前搭建过的首页截图,默认账户密码,看自己的设定,就是脚本中你预设的值

如何使用minio

登陆进去之后,我简单讲一下页面的简单操作,至于程序层面后续的连接,等后续如果有时间,将创建一个我的springboot系列来讲一下如何通过程序对接minio实现使用。

这边不废话,做一些进入之后的基础操作,截图加备注,简单描述

1.创建桶(Bucket) 

至于名字自己定义

2.针对桶创建桶基础规则,以及账户

创建账户

创建用户,按照权限放出对应用户

给用户创建access key 用于后期代码对接

设置后台启动

  1.创建minio.service文件

    cd /etc/systemd/system/ && touch minio.service

   2.vim minio.service 并将如下内容直接粘贴,注意自己替换账户密码,以及StandardOutput对应的实际地址

    [Unit]

   Description=Minio Service

   [Service]

   Environment="MINIO_ROOT_USER=admin"

   Environment="MINIO_ROOT_PASSWORD=123456789"

   ExecStart=/root/minio server /mnt/data --console-address ":9090"

   ExecReload=/bin/kill -s HUP $MAINPID

   ExecStop=/bin/kill -s QUIT $MAINPID

   StandardOutput=/mnt/minio/logs/minio.log

   PrivateTmp=true

   [Install]

   WantedBy=multi-user.target

  3.执行如下命令完成后台动

     systemctl daemon-reload &&  systemctl enable minio.service && systemctl start minio.service && systemctl status minio.service

     如果出现如下内容,开始测试你的minio吧