Docker部署Minio (服务器上部署Minio)

时间:2024-11-12 10:04:34

Minio简介:

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

  • MinIO 提供高性能、与S3 兼容的对象存储系统,让你自己能够构建自己的云储存服务。
  • MinIO原生支持Kubernetes,它可用于每个独立的公共云、每个 Kubernetes 发行版、私有云和边缘的对象存储套件。
  • MinIO是软件定义的,不需要购买其他任何硬件,在 GNU AGPL v3 下是 100% 开源的。

Docker在服务器上部署Minio

一、使用Docker拉取Minio的镜像

1、前往Docker镜像仓库,搜索 minio/minio

Docker镜像仓库

2、使用Docker拉取Minio镜像

方式一:拉取最新版的Minio镜像: docker pull minio/minio

拉取最新的Minio镜像

方式二:拉取指定版本的Minio镜像,根据个人需求选择点击复制即可。

minio的镜像拉取
复制后的示例如下(具体依据实际情况):

docker pull minio/minio:RELEASE.2023-04-28T18-11-17Z

执行示例:

[root@VM-4-10-centos ~]# docker pull minio/minio:RELEASE.2023-04-28T18-11-17Z
RELEASE.2023-04-28T18-11-17Z: Pulling from minio/minio
28ff5ee6facb: Pull complete 
3693dff23ec8: Pull complete 
5704174bdb96: Pull complete 
d508ad7e7f9a: Pull complete 
afe65f7a1e28: Pull complete 
749650377f44: Pull complete 
Digest: sha256:8ba4ed4d0eafe0458071c2ebe12301eaccd32b10d5299765db2b00ef2f1b382b
Status: Downloaded newer image for minio/minio:RELEASE.2023-04-28T18-11-17Z
/minio/minio:RELEASE.2023-04-28T18-11-17Z
[root@VM-4-10-centos ~]# docker images
REPOSITORY    TAG                            IMAGE ID       CREATED         SIZE
minio/minio   RELEASE.2023-04-28T18-11-17Z   5ba81f3dad7f   2 days ago      257MB

二.创建存放Minio必要配置的文件目录

创建根目录minio

[root@VM-4-10-centos ~]# mkdir -p /usr/local/docker/minio

创建用于存放Minio外部挂载的配置文件目录和存储上传文件的目录

[root@VM-4-10-centos ~]# cd /usr/local/docker/minio/
[root@VM-4-10-centos minio]# mkdir  -p data config

Xftp中查看执行后的目录结构
以上目录结构安排根据个人情况而安排,仅供参考!

三、创建Minio容器并运行

1、先放行服务器防火墙的端口号9000

端口号放行 firewall-cmd --zone=public --add-port=9000/tcp --permanent

[root@VM-4-10-centos ~]# firewall-cmd --zone=public --add-port=9000/tcp --permanent 
success
2、重启防火墙

重启防火墙 service firewalld restart

[root@VM-4-10-centos minio]# service firewalld  restart
Redirecting to /bin/systemctl restart 
3、创建Minio容器并运行

单行格式 :

docker run -p 9000:9000 --net=host --name minio -d --restart=always -e "MINIO_ACCESS_KEY=minioadmin" -e "MINIO_SECRET_KEY=minioadmin" -v /usr/local/docker/minio/data:/data -v /usr/local/docker/minio/config:/root/.minio minio server /data --console-address ":9090" -address ":9000"

多行格式 :

docker run -p 9000:9000 \
     --net=host \
     --name minio \
     -d --restart=always \
     -e "MINIO_ACCESS_KEY=minioadmin" \
     -e "MINIO_SECRET_KEY=minioadmin" \
     -v /usr/local/docker/minio/data:/data \
     -v /usr/local/docker/minio/config:/root/.minio \
     minio server \
     /data --console-address ":9090" -address ":9000"

解析:

-d :后台启动
-p :端口映射
--name : 为这个容器取一个名字
-e :设置环境变量
-v : 文件挂载
-d --net=host : 加了–net=host以后就不需要再做端口映射了
--restart=always : 参数能够使我们在重启docker时,自动启动相关容器
-e "MINIO_ACCESS_KEY=minioadmin" -e "MINIO_SECRET_KEY=minioadmin" : 设置用户名和登录密码
-v /usr/local/docker/minio/data:/data -v /usr/local/docker/minio/config:/root/.minio : 对存放配置和文件的目录挂载
minio server /data : minio的启动命令,(minio 是镜像名字、 /data:数据存储位置)

执行示例:

[root@VM-4-10-centos minio]# docker run -p 9000:9000   --net=host  --name minio -d --restart=always -e "MINIO_ACCESS_KEY=minioadmin" -e "MINIO_SECRET_KEY=minioadmin" -v /usr/local/docker/minio/data:/data -v /usr/local/docker/minio/config:/root/.minio minio server /data --console-address ":9090" -address ":9000"
4b66f2c8e6b3940cac4de02c9ff31271e1afc96c001bbb43a23f5bc5e0bbee29
[root@VM-4-10-centos minio]# docker ps
CONTAINER ID   IMAGE           COMMAND                  CREATED          STATUS         PORTS                               NAMES
0e2ab435e113   minio     "/usr/bin/docker-ent…"   11 seconds ago   Up 9 seconds   0.0.0.0:9000->9000/tcp              minio

至此,Minio已经在服务器上部署完成了!

四、访问Minio

访问方法:
在浏览器中输入 http://服务器的ip或域名:9000/login

Minio的web端可视化窗口
输入创建Minio容器时配置的用户名和密码:
用户名:minioadmin
密码:minioadmin

1、登录完成后进入

Minioweb端

2、创建用户

创建用户

3、创建用户组

分组

4、创建公钥和私钥

创建公钥和私钥
Minio详细教程,请前往官方教程查看,以上内容仅供参考。