【发布时间】:2022-02-03 08:07:19
【问题描述】:
我对这种无服务器和 AWS 完全陌生。我正在尝试使用无服务器创建 S3 存储桶
我的 serverless.yml 文件如下所示
service: s3-file-uploader
provider:
name: aws
runtime: nodejs12.x
stage: dev
region: us-east-2
custom:
fileUploadBucketName: ${self:service}-bucket-${self:provider.stage}
resources:
Resources:
FileBucket:
Type: AWS::S3::Bucket
Properties:
BucketName: ${self:custom.fileUploadBucketName}
AccessControl: PublicRead
当我第一次运行 serverless deploy 时它工作了,但此后我从 aws 手动删除了存储桶并尝试重新部署它。它告诉我这个错误
Serverless Error ----------------------------------------
An error occurred: FileBucket - s3-file-uploader-bucket-dev already exists.
Get Support --------------------------------------------
Docs: docs.serverless.com
Bugs: github.com/serverless/serverless/issues
Issues: forum.serverless.com
Your Environment Information ---------------------------
Operating System: win32
Node Version: 14.18.0
Framework Version: 2.72.1
Plugin Version: 5.5.4
SDK Version: 4.3.0
Components Version: 3.18.2
它说带有s3-file-uploader-bucket-dev 这个名称的存储桶已经存在,但是在 aws s3 中没有这个名称的存储桶。
即使它给出了这个错误,也会创建一个名为 s3-file-uploader-dev-serverlessdeploymentbucket-1aucnojnjl618 的存储桶,但这不是我在 serverlesss.yml 文件中给出的名称,它应该像 s3-file-uploader-bucket-dev 并且在 cloudFormation 中有一个堆栈使用名称s3-file-uploader-dev 创建,其状态为UPDATE_ROLLBACK_COMPLETE。
为什么它显示上述错误,同时创建一个不同名称的存储桶?给出一个错误并创建一个桶是令人困惑的。
【问题讨论】:
标签: amazon-web-services amazon-s3 serverless serverless-framework