Zac*_*ach 7 python amazon-s3 amazon-web-services aws-lambda localstack
我有一个奇怪的问题,试图让boto3在AWS SAM local连接到localstack S3。我知道这特别奇怪,因为SQS工作正常。这两个localstack和AWS SAM local被调用,以泊坞窗网我已经创建,称为内运行test。
我的(非工作 S3)Python 代码是:
ACCESS_KEY='123'
SECRET_KEY='abc'
s3 = boto3.client('s3',
endpoint_url="http://docker.for.mac.localhost:4572",
use_ssl=False,
aws_access_key_id=ACCESS_KEY,
aws_secret_access_key=SECRET_KEY)
print s3.list_buckets()
Run Code Online (Sandbox Code Playgroud)
上面的代码给了我错误:An error occurred (NoSuchBucket) when calling the ListBuckets operation: The specified bucket does not exist: NoSuchBucket.
但是,如果我将代码更改为 use localstack SQS,如下所示:
ACCESS_KEY='123'
SECRET_KEY='abc'
sqs = boto3.client('sqs',
endpoint_url="http://docker.for.mac.localhost:4576",
use_ssl=False,
aws_access_key_id=ACCESS_KEY,
aws_secret_access_key=SECRET_KEY)
print sqs.list_queues()
Run Code Online (Sandbox Code Playgroud)
一切正常,它列出了我在localstack SQS.
小智 0
默认情况下,所有 API 调用的主入口点是 4566。EDGE_PORT我localstack/localstack:latest通过同一端口与容器内的 S3 进行交互。
为了让它工作,我还必须更改 AWS SDK 配置以使用s3ForcePathStyle: true.
以上对你有用吗?
| 归档时间: |
|
| 查看次数: |
3449 次 |
| 最近记录: |