天天看點

docker-compose 搭建 最新版minio 配置(含分布式)1.簡介2.單機編排3.叢集編排4.進入控制台

1.簡介

MinIO 是一個基于Apache License v2.0開源協定的對象存儲服務。它相容亞馬遜S3雲存儲服務接口,非常适合于存儲大容量非結構化的資料,例如圖檔、視訊、日志檔案、備份資料和容器/虛拟機鏡像等,而一個對象檔案可以是任意大小,從幾kb到最大5T不等。

MinIO是一個非常輕量的服務,可以很簡單的和其他應用的結合,類似 NodeJS, Redis 或者 MySQL。

minio中文文檔

2.單機編排

version: '3'
services:
  minio:
    image: minio/minio
    hostname: "minio"
    ports:
      - 9000:9000 # api 端口
      - 9001:9001 # 控制台端口
    environment:
      MINIO_ACCESS_KEY: minioadmin  #管理背景使用者名
      MINIO_SECRET_KEY: minioadmin  #管理背景密碼,最小8個字元
    volumes:
      - /docker/minio/data:/data               #映射目前目錄下的data目錄至容器内/data目錄
      - /docker/minio/config:/root/.minio/     #映射配置目錄
    command: server --console-address ':9001' /data  #指定容器中的目錄 /data
    privileged: true
    restart: always
           

3.叢集編排

version: '3'

# starts 4 docker containers running minio server instances.
# using nginx reverse proxy, load balancing, you can access
# it through port 9000.
services:
  minio1:
    image: minio/minio
    hostname: minio1
    volumes:
      - data1-1:/data1
      - data1-2:/data2
    expose:
      - "9000"
      - "9001"
    environment:
      MINIO_ROOT_USER: minio
      MINIO_ROOT_PASSWORD: minio123
    command: server --console-address ":9001" http://minio{1...4}/data{1...2}
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3

  minio2:
    image: minio/minio
    hostname: minio2
    volumes:
      - data2-1:/data1
      - data2-2:/data2
    expose:
      - "9000"
      - "9001"
    environment:
      MINIO_ROOT_USER: minio
      MINIO_ROOT_PASSWORD: minio123
    command: server --console-address ":9001" http://minio{1...4}/data{1...2}
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3

  minio3:
    image: minio/minio
    hostname: minio3
    volumes:
      - data3-1:/data1
      - data3-2:/data2
    expose:
      - "9000"
      - "9001"
    environment:
      MINIO_ROOT_USER: minio
      MINIO_ROOT_PASSWORD: minio123
    command: server --console-address ":9001" http://minio{1...4}/data{1...2}
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3

  minio4:
    image: minio/minio
    hostname: minio4
    volumes:
      - data4-1:/data1
      - data4-2:/data2
    expose:
      - "9000"
      - "9001"
    environment:
      MINIO_ROOT_USER: minio
      MINIO_ROOT_PASSWORD: minio123
    command: server --console-address ":9001" http://minio{1...4}/data{1...2}
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3

  nginx:
    image: nginx:1.19.2-alpine
    hostname: nginx
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf:ro
    ports:
      - "9000:9000"
      - "9001:9001"
    depends_on:
      - minio1
      - minio2
      - minio3
      - minio4

## By default this config uses default local driver,
## For custom volumes replace with volume driver configuration.
volumes:
  data1-1:
  data1-2:
  data2-1:
  data2-2:
  data3-1:
  data3-2:
  data4-1:
  data4-2:
           

4.進入控制台

通路 

http://ip:9000

 即可進入登入頁面

賬号密碼為編排檔案内指定的 

MINIO_ROOT_USER

 與 

MINIO_ROOT_PASSWORD

docker-compose 搭建 最新版minio 配置(含分布式)1.簡介2.單機編排3.叢集編排4.進入控制台

 點選 

Object Browser

 進入桶頁面 點選 

Create Buckets

 建立桶

docker-compose 搭建 最新版minio 配置(含分布式)1.簡介2.單機編排3.叢集編排4.進入控制台

建立一個名為 

test

 的對象桶 

docker-compose 搭建 最新版minio 配置(含分布式)1.簡介2.單機編排3.叢集編排4.進入控制台

 點選 

Create Folder

 可以随意建立路徑目錄

docker-compose 搭建 最新版minio 配置(含分布式)1.簡介2.單機編排3.叢集編排4.進入控制台

 我們在 

test/upload/images

 目錄下點選 

File

 上傳檔案按鈕

選擇需要上傳的檔案 點選上傳即可

docker-compose 搭建 最新版minio 配置(含分布式)1.簡介2.單機編排3.叢集編排4.進入控制台

 點選檔案後方 

下載下傳

 标志按鈕可以下載下傳檔案

docker-compose 搭建 最新版minio 配置(含分布式)1.簡介2.單機編排3.叢集編排4.進入控制台

 我們點選下載下傳 将檔案下載下傳到桌面

docker-compose 搭建 最新版minio 配置(含分布式)1.簡介2.單機編排3.叢集編排4.進入控制台

下載下傳成功 接下來我們将檔案進行删除

點選 檔案後方 

删除

 标志按鈕 

docker-compose 搭建 最新版minio 配置(含分布式)1.簡介2.單機編排3.叢集編排4.進入控制台

提示删除成功 檔案消失

docker-compose 搭建 最新版minio 配置(含分布式)1.簡介2.單機編排3.叢集編排4.進入控制台

參考文章:傳送門 

繼續閱讀