docker-compose部署Minio

本文介绍了如何选择Minio的特定稳定镜像RELEASE.2021-04-18T19-26-29Z,通过docker-compose配置四个Minio节点,每个节点一个磁盘,并利用Nginx进行负载均衡。注意在Windows环境下处理磁盘映射的问题,以及配置了故障恢复策略。
摘要由CSDN通过智能技术生成

一、镜像选择

Minio有很多镜像会有一些bug,而且不好解决,这里使用的是镜像

RELEASE.2021-04-18T19-26-29Z

直接: docker pull minio/minio:RELEASE.2021-04-18T19-26-29Z  即可:

拉取之后可以打个tag,这里是new2

 RELEASE.2021-06-17T00-10-46Z 这个镜像是稍微新一点的,但是会有一些问题

二、docker-compse

version: '3.5'
services:
  minio1:
    image: minio:new2
    hostname: minio1
    #volumes:
     # - D:\Research\Minio\data\driver1:/miniodisk
    environment: 
      - MINIO_ROOT_USER=minio_admin
      - MINIO_ROOT_PASSWORD=minio_admin
    command: ["server","http://minio{1...4}/miniodisk"]
  minio2:
    image: minio:new2
    hostname: minio2
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
    #volumes:
    #  - D:\Research\Minio\data\driver2:/miniodisk
    environment: 
      - MINIO_ROOT_USER=minio_admin
      - MINIO_ROOT_PASSWORD=minio_admin
    command: ["server","http://minio{1...4}/miniodisk"]
  minio3:
    image: minio:new2
    hostname: minio3
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
    #volumes:
    #  - D:\Research\Minio\data\driver3:/miniodisk
    environment: 
      - MINIO_ROOT_USER=minio_admin
      - MINIO_ROOT_PASSWORD=minio_admin
    command: ["server","http://minio{1...4}/miniodisk"]
  minio4:
    image: minio:new2
    hostname: minio4
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
    #volumes:
    #  - D:\Research\Minio\data\driver4:/miniodisk
    environment: 
      - MINIO_ROOT_USER=minio_admin
      - MINIO_ROOT_PASSWORD=minio_admin
    command: ["server","http://minio{1...4}/miniodisk"]
  nginx: 
    image: nginx
    hostname: nginx
    ports: 
      - 8088:8080
    volumes: 
      - D:\Research\Minio\nginx.conf2:/etc/nginx/conf.d/nginx.conf

有几点说明:

1. 关于volumes,因为我这里是使用的docker-desktop,windows的磁盘文件映射到linux内部,这样导致minio请求磁盘信息的时候有问题,所以我们直接使用内部目录,会导致容器销毁后文件丢失,但是测试不影响。在Linux上可以直接映射

2. 关于command:这里我们是模拟四个节点  每个节点一个驱动一个磁盘 , 所以这里是http://minio{1...4}/miniodisk 如果每个驱动2个磁盘,直接可以http://minio{1...4}/miniodisk{1...2}

三、关于nginx

这里贴出nginx配置文件:

     upstream minioconsole {
      server minio1:9000;
      server minio2:9000;
	  server minio3:9000;
      server minio4:9000;
     }

server {
    listen       8080;
    listen  [::]:8080;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;
    client_max_body_size 5120M;

    location /{
        proxy_pass http://minioconsole/;
	    proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

nginx直接做负载均衡

四、结果展示:

 

 

回答: 若要使用docker-compose部署minio,可以创建一个docker-compose.yml文件,并按照以下配置进行设置: version: "3" services: minio: image: minio/minio:latest container_name: minio ports: - "9100:9000" - "9090:9090" volumes: - "./data:/data" environment: - MINIO_ACCESS_KEY=admin - MINIO_SECRET_KEY=admin123 command: server /data --console-address=":9000" --address=":9090" logging: driver: "json-file" options: max-size: "1m" 这个配置文件指定了minio镜像的版本、容器名称、端口映射、数据卷挂载、环境变量等参数。你可以根据自己的需求进行修改配置文件,然后使用docker-compose命令进行部署123 #### 引用[.reference_title] - *1* *3* [minio文件服务器-docker docker-compose 搭建部署以及使用大全](https://blog.csdn.net/tianmingqing0806/article/details/126251506)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] - *2* [docker-compose部署minio](https://blog.csdn.net/weixin_42202489/article/details/123201738)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值