Docker部署Minio (服务器上部署Minio)
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。
2、使用Docker拉取Minio镜像
方式一:拉取最新版的Minio镜像: docker pull 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
docker.io/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
以上目录结构安排根据个人情况而安排,仅供参考!
三、创建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 firewalld.service
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容器时配置的用户名和密码: 用户名:minioadmin 密码:minioadmin
1、登录完成后进入
2、创建用户
3、创建用户组
4、创建公钥和私钥
Minio详细教程,请前往官方教程查看,以上内容仅供参考。