【发布时间】:2021-05-17 19:06:39
【问题描述】:
如何将我的本地 minIO 存储连接到 aws-sdk-go-v2?我可以在以前版本的 go SDK 中找到有关如何执行此操作的明确文档,但在 V2 中找不到。我通读了版本 2 的源代码,似乎 aws-sdk-go-v2 删除了禁用 SSL 并指定本地 S3 端点的选项(服务 URL 必须采用亚马逊风格)。
【问题讨论】:
标签: go aws-sdk minio aws-sdk-go
如何将我的本地 minIO 存储连接到 aws-sdk-go-v2?我可以在以前版本的 go SDK 中找到有关如何执行此操作的明确文档,但在 V2 中找不到。我通读了版本 2 的源代码,似乎 aws-sdk-go-v2 删除了禁用 SSL 并指定本地 S3 端点的选项(服务 URL 必须采用亚马逊风格)。
【问题讨论】:
标签: go aws-sdk minio aws-sdk-go
你可以很容易地做到这一点:
const defaultRegion = "us-east-1"
staticResolver := aws.EndpointResolverFunc(func(service, region string) (aws.Endpoint, error) {
return aws.Endpoint{
PartitionID: "aws",
URL: "http://localhost:9123", // or where ever you ran minio
SigningRegion: defaultRegion,
HostnameImmutable: true,
}, nil
})
cfg = aws.Config{
Region: defaultRegion,
Credentials: credentials.NewStaticCredentialsProvider("minioadmin", "minioadmin", ""),
EndpointResolver: staticResolver,
}
s3Client := s3.NewFromConfig(cfg)
【讨论】: