返回介绍

适用于与Amazon S3兼容的云存储的MinIO Python Library

发布于 2020-10-02 16:00:53 字数 9995 浏览 1120 评论 0 收藏 0

MinIO Python Client SDK提供简单的API来访问任何与Amazon S3兼容的对象存储服务。

本文我们将学习如何安装MinIO client SDK,并运行一个python的示例程序。对于完整的API以及示例,请参考Python Client API Reference

本文假设你已经有一个可运行的 Python开发环境。

最低要求

  • Python 2.7或更高版本

使用pip安装

pip install minio

使用源码安装

git clone https://github.com/minio/minio-py
cd minio-py
python setup.py install

初始化MinIO Client

MinIO client需要以下4个参数来连接MinIO对象存储服务。

参数描述
endpoint对象存储服务的URL。
access_keyAccess key是唯一标识你的账户的用户ID。
secret_keySecret key是你账户的密码。
securetrue代表使用HTTPS。
from minio import Minio
from minio.error import ResponseError

minioClient = Minio('play.min.io',
                  access_key='Q3AM3UQ867SPQQA43P2F',
                  secret_key='zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG',
                  secure=True)

示例-文件上传

本示例连接到一个MinIO对象存储服务,创建一个存储桶并上传一个文件到存储桶中。

我们在本示例中使用运行在 https://play.min.io 上的MinIO服务,你可以用这个服务来开发和测试。示例中的访问凭据是公开的。

file-uploader.py

# 引入MinIO包。
from minio import Minio
from minio.error import (ResponseError, BucketAlreadyOwnedByYou,
                         BucketAlreadyExists)

# 使用endpoint、access key和secret key来初始化minioClient对象。
minioClient = Minio('play.min.io',
                    access_key='Q3AM3UQ867SPQQA43P2F',
                    secret_key='zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG',
                    secure=True)

# 调用make_bucket来创建一个存储桶。
try:
       minioClient.make_bucket("maylogs", location="us-east-1")
except BucketAlreadyOwnedByYou as err:
       pass
except BucketAlreadyExists as err:
       pass
except ResponseError as err:
       raise
else:
        try:
               minioClient.fput_object('maylogs', 'pumaserver_debug.log', '/tmp/pumaserver_debug.log')
        except ResponseError as err:
               print(err)

Run file-uploader

python file_uploader.py

mc ls play/maylogs/
[2016-05-27 16:41:37 PDT]  12MiB pumaserver_debug.log

API文档

完整的API文档在这里。

API文档 : 操作存储桶

API文档 : 存储桶策略

API文档 : 存储桶通知

API文档 : 操作文件对象

API文档 : 操作对象

API文档 : Presigned操作

完整示例

完整示例 : 操作存储桶

完整示例 : 存储桶策略

完整示例 : 存储桶通知

完整示例 : 操作文件对象

完整示例 : 操作对象

完整示例 : Presigned操作

了解更多

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文