oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)

使用 MinIO 搭建属于自己的对象存储(OSS)

MinIO 是在 GNU Affero 通用公共许可证 v3.0 下发布的高性能对象存储。 它是与 Amazon S3 云存储服务兼容的 API。 使用 MinIO 为机器学习、分析和应用程序数据工作负载构建高性能基础架构。

官网:https://min.io/

中文官网:http://www.minio.org.cn/

GitHub:https://github.com/minio/


若想搭建分布式的对象存储,可以参考其官方给出的文件编写。官方提供了 docker-compose 和 kubernetes 两种方式。

https://github.com/minio/minio/tree/master/docs/orchestration/docker-compose

本教程使用的是 docker-compose 和单机布署的方式,内容参考

https://jihulab.com/jetsung/docker-compose/-/tree/main/minio/single

docker-compose.yml 文件内容

version: '3' services: server: image: quay.io/minio/minio:RELEASE.2022-03-08T22-28-51Z command: server --console-address ":9001" /data environment: MINIO_ROOT_USER: user MINIO_ROOT_PASSWORD: password MINIO_BROWSER_REDIRECT_URL: http://localhost:9001 MINIO_SERVER_URL: http://localhost:9000 healthcheck: test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"] interval: 30s timeout: 20s retries: 3 volumes: - data:/data ports: - "9000:9000" - "9001:9001" volumes: data:

environment 环境变量说明请查看 https://docs.min.io/minio/baremetal/reference/minio-server/minio-server.html

注意:

1、 image 可修改为最新的发布版本(根据其官方 GitHub Release 发布页);

2、MINIO_ROOT_USER 和 MINIO_ROOT_PASSWORD 若未配置,则默认账号和密码均为 minioadmin;

3、 MINIO_BROWSER_REDIRECT_URL 为 Console 管理平台登录网址,若不希望通过浏览器登录,可以增加 MINIO_BROWSER: off,禁止浏览器登录;

4、MINIO_SERVER_URL 为文件分享网址。若未设置,则默认为本身的容器 IP,不可正常使用。若使用了 nginx 反向代理,则更需要设置此参数;

使用

首先,运行容器。

# 运行容器 docker compose up -d

通过浏览器管理
  • 登录 Console 平台

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(1)

  • 创建存储桶

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(2)

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(3)

  • 管理或浏览存储桶

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(4)

  • 上传文件

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(5)

  • 分享文件

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(6)

  • 复制分享网址

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(7)

  • 浏览器查看分享的内容

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(8)

  • 不带密钥查看时,权限不足提示

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(9)

  • 将存储桶设置为“公开”形式,则可不带密钥查看文件内容

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(10)

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(11)

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(12)

  • 再次查看分享的内容(不再提示“权限不足”)

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(13)

  • 添加一对密钥

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(14)

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(15)

通过 MinIO Client (mc) 管理
  • 使用默认账密登录

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(16)

  • 使用 Console 后台创建的密钥登录

oss对象存储怎么弄(使用MinIO搭建属于自己的对象存储)(17)

  • 更多命令行

# 登录 mc alias set test2 http://localhost:9000 # 支持 S3 协议的平台登录(比如位于“华南”的七牛云) # S3 服务域名: https://developer.qiniu.com/kodo/4088/s3-access-domainname mc alias set qiniu https://s3-cn-south-1.qiniucs.com # 复制 test.txt 文件到存储桶 mc cp test.txt test2/test/ # 删除 test 存储桶中的 test.txt 文件 mc rm test2/test/test.txt # 查看存储桶中的文件(夹) mc ls test2/test/

官方命令行教程地址:https://docs.min.io/minio/baremetal/reference/minio-mc.html#command-mc

注意

若使用 nginx 反向代理,则需要在 server 配置一些参数,使之可以上传大文件,可参考其官方仓库文档说明。

# To allow special characters in headers ignore_invalid_headers off; # Allow any size file to be uploaded. # Set to a value such as 1000m; to restrict file size to a specific value client_max_body_size 0; # To disable buffering proxy_buffering off; proxy_request_buffering off;

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页