minio单节点部署
参考文档
1.更改docker镜像源
https://blog.csdn.net/llc580231/article/details/139979603?spm=1001.2014.3001.5506
根据文档更新
2.部署文档
minio 快速入门+单机部署+集群+调优_minio单机部署-CSDN博客
2.安装docker-compose
官网下载安装包
上传包
rz docker-compose-linux-x86_64
chmod +x docker-compose-linux-x86_64
mv docker-compose-linux-x86_64 /usr/bin/docker-compose
验证
docker-compose -v
二. 项目部署
MinIO部署
MinIO的两种部署模式:
standalone:单节点minio
distributed:分布式的minio集群,需要说明的是,一个分布式的minio至少需要四块磁盘
单机Minio服务存在单点故障,如果是一个有N块硬盘的分布式Minio,只要有N/2硬盘在线,数据就不会丢失。但是要想实现数据的写入,至少需要N/2+1个硬盘。比如一个16节点的Minio集群,每个节点16块硬盘,就算8台服务器宕机,这个集群仍然是可读的,不过需要9台服务器才能写数据。
只要遵守分布式Minio的限制,可以组合不同的节点和每个节点几块硬盘。比如,可以使用2个节点,每个节点4块硬盘,也可以使用4个节点,每个节点两块硬盘,诸如此类
1、部署minio(单机单盘)
1. 拉取镜像
docker pull bitnami/minio:2024
2. 创建目录
mkdir -p /data/pdzx/zsk/minio
mkdir /data/pdzx/zsk/minio/{data,log}
chmod -R 777 /data/pdzx/zsk/minio/data
cd /data/pdzx/zsk/minio
3. 启动服务
vim docker-compose-minio.yml
version: "3"
services:
minio-node:
image: bitnami/minio:2024
container_name: minio
restart: always
network_mode: host
privileged: true
environment:
MINIO_ROOT_USER: admin
MINIO_ROOT_PASSWORD: 12345678
volumes:
- /data/pdzx/zsk/minio/data:/data
- /data/pdzx/zsk/minio/log:/home/minio/.minio.sys/log
command: /opt/bitnami/minio/bin/minio server /data --console-address "0.0.0.0:9001" --address "0.0.0.0:9000"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/ready"]
interval: 30s
timeout: 10s
retries: 3
启动服务
docker-compose -f docker-compose-minio.yml up -d
查看是否启动
docker logs -f minio
设置时区
docker exec -it -u root minio bash
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo "Asia/Shanghai" > /etc/timezone
退出并重启容器
exit
docker restart minio
验证集群
docker exec -it -u root minio bash -c "mc config host add myminio http://localhost:9000 admin 12345678" # 客户端连接服务
docker exec -it -u root minio bash -c "mc admin info myminio" # 查看集群状态
docker exec -it -u root minio bash -c "date" # 确认时间