Minio在Windows的部署并使用Python来操作桶

什么是Minio?

MinIO 是一个开源的对象存储服务器,具有高可用性、高性能和可伸缩性。它兼容 Amazon S3 API,因此可以无缝地替代 Amazon S3 作为对象存储的解决方案。

MinIO 可以让你在自己的基础设施中搭建一个对象存储服务,使你能够存储和检索任意类型的数据,例如图像、视频、文档等。你可以使用 MinIO 提供的 API 进行数据的上传、下载和管理,也可以通过 MinIO 客户端库在应用程序中与 MinIO 进行交互。

MiniO官网:MinIO | 高性能, Kubernetes 原生对象存储

下载Minio

可通过这个链接下载minio.exe文件。下载完成后,在minio.exe所在目录下进入cmd,输入:

minio.exe server D:\ 希望启动minio服务目录的路径

sever:指定minio server的管道操作,如果在不指定具体操作,如:start(启动)、stop(停止)、restart(重启)

红色文字处自行修改。

按下Ctrl+鼠标左键点击http://127.0.0.1:9000进入浏览器页面并使用 root 凭据登录。您可以使用浏览器创建存储桶、上传对象和浏览 MinIO 服务器的内容。

默认的RootUser和RootPass均为minioadmin。

 进入MinIO控制台,如下图所示:

创建桶

创建bucket。点击Buckets—>Create Bucket

自行命名

使用Python交互实现文件上传并获取可分享链接

新建一个虚拟环境,下面仅供参考:

conda create -n Minio python=3.7 

pip命令安装

pip install minio

导入minio包,创建客户端  

import minio
import os

client = minio.Minio(
    endpoint='192.168.43.128:9000',
    access_key='minioadmin',
    secret_key='minioadmin',
    secure=False
)

通过client.bucket_exists()函数直接进行存储桶的查询,添加参数“bucket_name”,为了防止因存储桶不存在而无法上传的情况,先使用条件语句判断。

if client.bucket_exists("computerversion"):

没有问题的话,就用with open打开我们的文件:

 with open("ikun.mp4", "rb") as file_data:
     bytes_length = os.path.getsize("ikun.mp4")
     client.put_object("computerversion", "ikun.mp4", file_data, bytes_length)
     url = client.presigned_get_object("computerversion", "ikun.mp4")
     print(url)

全部代码:

import minio
import os

client = minio.Minio(
    endpoint='192.168.43.128:9000',
    access_key='minioadmin',
    secret_key='minioadmin',
    secure=False
)

if client.bucket_exists("computerversion"):
    with open("ikun.mp4", "rb") as file_data:
        bytes_length = os.path.getsize("ikun.mp4")
        client.put_object("computerversion", "ikun.mp4", file_data, bytes_length)
        url = client.presigned_get_object("computerversion", "ikun.mp4")
        print(url)

控制台输出:

Ctrl+左键打开URL,文件在浏览器中下载。

 再次打开Minio控制台并刷新。

文件上传成功!

Windows的API文档

MinIO Object Storage for Windows — MinIO Object Storage for Windows

进去也能查看其他语言的API。这里只是搭建测试的一个简单示例,后面会有更多的开发。

参考文章

(2条消息) MinIO在Windows的部署与简单使用_minio windows部署_半岛铁子_的博客-CSDN博客

(2条消息) 【高可用对象存储实战】使用Python操作Minio存储桶_minio python_Day(AKA Elin)的博客-CSDN博客

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏天是冰红茶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值