如何使用 python SDK 创建存储桶?
Posted
技术标签:
【中文标题】如何使用 python SDK 创建存储桶?【英文标题】:How to create a bucket using the python SDK? 【发布时间】:2021-08-04 05:03:08 【问题描述】:我正在尝试使用 python 在云对象存储中创建一个存储桶。我已按照API docs 中的说明进行操作。
这是我正在使用的代码
COS_ENDPOINT = "https://control.cloud-object-storage.cloud.ibm.com/v2/endpoints"
# Create client
cos = ibm_boto3.client("s3",
ibm_api_key_id=COS_API_KEY_ID,
ibm_service_instance_id=COS_INSTANCE_CRN,
config=Config(signature_version="oauth"),
endpoint_url=COS_ENDPOINT
)
s3 = ibm_boto3.resource('s3')
def create_bucket(bucket_name):
print("Creating new bucket: 0".format(bucket_name))
s3.Bucket(bucket_name).create()
return
bucket_name = 'test_bucket_442332'
create_bucket(bucket_name)
我收到此错误 - 我尝试设置 CreateBucketConfiguration="LocationConstraint":"us-south",但它似乎不起作用
"ClientError: An error occurred (IllegalLocationConstraintException) when calling the CreateBucket operation: The unspecified location constraint is incompatible for the region specific endpoint this request was sent to."
【问题讨论】:
【参考方案1】:转至https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpoints#endpoints解决
并选择特定于我需要的区域的端点。凭据提供的“端点”不是实际的端点。
【讨论】:
以上是关于如何使用 python SDK 创建存储桶?的主要内容,如果未能解决你的问题,请参考以下文章
如何通过 PHP SDK 在 Amazon S3 存储桶下创建文件夹?
如何强制删除 S3 存储桶中的所有对象版本,然后最终使用 aws-sdk-go 删除整个存储桶?
如何使用aws java sdk将文件从S3存储桶从一个区域复制到另一个区域?
如何使用 IAM 角色通过 aws sdk (java) 从 ECS 容器调用 s3 存储桶