引言

在现代云计算和大数据时代,对象存储服务扮演着至关重要的角色。MinIO是一个高性能的分布式对象存储服务,它与Amazon S3 API兼容,可以用于存储大量的非结构化数据,如图片、视频、日志文件等。通过Docker容器化技术,我们可以轻松地在任何支持Docker的环境中部署Minio,实现快速、灵活且可扩展的存储解决方案。

Minio介绍

官网:

https://min.io/https://www.minio.org.cn/

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

MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。

https://对象存储服务(Object Storage Service,OSS)是一种海量、安全、低成本、高可靠的云存储服务,适合存放任意类型的文件。容量和处理能力弹性扩展,多种存储类型供选择,全面优化存储成本。

对于中小型企业,如果不选择存储上云,那么 Minio 是个不错的选择,麻雀虽小,五脏俱全。当然Minio 除了直接作为对象存储使用,还可以作为云上对象存储服务的网关层,无缝对接到 Amazon S3、MicroSoft Azure。

为什么选择Docker?

Docker是一个开源的容器化平台,它允许开发者将应用及其依赖打包到一个轻量级、可移植的容器中。使用Docker部署MinIO的好处包括:

快速部署:Docker镜像包含了运行MinIO所需的所有依赖,可以快速启动服务。

环境一致性:Docker容器在不同环境中运行表现一致,减少了环境差异带来的问题。

易于管理:Docker提供了一套完整的工具集,用于容器的创建、运行、停止和删除。

Docker部署MinIO对象存储

  • 在群晖File Stationdocker文件夹下创建minio文件夹。

  • minio文件夹创建configdata文件夹。

  • 打开Container Manager,新增项目。

  • 项目名称填入:minio,路径选择刚才创建的minio文件夹

  • 来源选择创建docker-compose.yml,填入以下代码,然后鼠标点击下一步,如遇到拉取不成功,那需要科学上网了。

version: '3'
services:

  minio:
    image: minio/minio:RELEASE.2024-07-26T20-48-21Z.fips  #自行选择相关版本
    container_name: minio

    ports:
      - 9000:9000	#API调用端口
      - 9001:9001	#控制台端口

    volumes:
      - ./data:/data
      - ./config:/root/.minio

    environment:
      MINIO_ACCESS_KEY: "minio"          #管理后台用户名,自行修改
      MINIO_SECRET_KEY: "minio123456"    #管理后台密码,自行修改
      
    command: server /data  --console-address ":9001"  #固定控制台端口9001      
 
    restart: always

  • 选择通过Web Station 设置网页门户,端口选择9001,然后鼠标点击下一步

  • 点击完成

  • 进入Web station 配置容器的页面门户,点击确认

  • 设置后台访问端口,门户类型选择基于端口,端口选择HTTP或者HTTPS,自定义端口号。

  • 创建minio对象存储完成

  • 通过群辉IP + 端口访问,例如:http://10.10.10.11:9001

  • 也可以在Web station创建的端口点击访问

  • 好了,以上就是我所分享的保姆级,通过群晖Docker部署MinIO对象存储。