无服务器 DynamoDB 未显示在 AWS 管理控制台中
Serverless DynamoDB not showing in AWS Management Console
我正在学习使用无服务器框架来创建和管理 AWS 服务。我已经通过无服务器站点上的文档逐步部署无服务器项目,但由于某种原因我无法在 AWS 管理控制台中看到 DynamoDB tables。
我已检查我使用的 AWS 配置文件是否正确,当我从终端使用 cURL 时,我能够 post 并从 table 获取数据,并且能够在浏览器中查看这些端点的数据,但我无法在 serverless.yml 文件之外的任何地方看到对创建的 table 的任何引用。这是为什么?请参阅下面的代码(完整的演示代码库位于 link:https://github.com/serverless/examples/tree/master/aws-node-rest-api-with-dynamodb)。
感谢您帮助了解此处的细微差别。谢谢!
org: justinbell714
app: jb-test-from-docs
service: serverless-rest-api-with-dynamodb
frameworkVersion: ">=1.1.0 <2.0.0"
provider:
name: aws
runtime: nodejs10.x
environment:
DYNAMODB_TABLE: ${self:service}-${opt:stage, self:provider.stage}
iamRoleStatements:
- Effect: Allow
Action:
- dynamodb:Query
- dynamodb:Scan
- dynamodb:GetItem
- dynamodb:PutItem
- dynamodb:UpdateItem
- dynamodb:DeleteItem
Resource: "arn:aws:dynamodb:${opt:region, self:provider.region}:*:table/${self:provider.environment.DYNAMODB_TABLE}"
functions:
create:
handler: todos/create.create
events:
- http:
path: todos
method: post
cors: true
list:
handler: todos/list.list
events:
- http:
path: todos
method: get
cors: true
get:
handler: todos/get.get
events:
- http:
path: todos/{id}
method: get
cors: true
update:
handler: todos/update.update
events:
- http:
path: todos/{id}
method: put
cors: true
delete:
handler: todos/delete.delete
events:
- http:
path: todos/{id}
method: delete
cors: true
resources:
Resources:
TodosDynamoDbTable:
Type: 'AWS::DynamoDB::Table'
DeletionPolicy: Retain
Properties:
AttributeDefinitions:
-
AttributeName: id
AttributeType: S
KeySchema:
-
AttributeName: id
KeyType: HASH
ProvisionedThroughput:
ReadCapacityUnits: 1
WriteCapacityUnits: 1
TableName: ${self:provider.environment.DYNAMODB_TABLE}
确保创建表的区域是您在 AWS 控制台中选择的区域。
我正在学习使用无服务器框架来创建和管理 AWS 服务。我已经通过无服务器站点上的文档逐步部署无服务器项目,但由于某种原因我无法在 AWS 管理控制台中看到 DynamoDB tables。
我已检查我使用的 AWS 配置文件是否正确,当我从终端使用 cURL 时,我能够 post 并从 table 获取数据,并且能够在浏览器中查看这些端点的数据,但我无法在 serverless.yml 文件之外的任何地方看到对创建的 table 的任何引用。这是为什么?请参阅下面的代码(完整的演示代码库位于 link:https://github.com/serverless/examples/tree/master/aws-node-rest-api-with-dynamodb)。
感谢您帮助了解此处的细微差别。谢谢!
org: justinbell714
app: jb-test-from-docs
service: serverless-rest-api-with-dynamodb
frameworkVersion: ">=1.1.0 <2.0.0"
provider:
name: aws
runtime: nodejs10.x
environment:
DYNAMODB_TABLE: ${self:service}-${opt:stage, self:provider.stage}
iamRoleStatements:
- Effect: Allow
Action:
- dynamodb:Query
- dynamodb:Scan
- dynamodb:GetItem
- dynamodb:PutItem
- dynamodb:UpdateItem
- dynamodb:DeleteItem
Resource: "arn:aws:dynamodb:${opt:region, self:provider.region}:*:table/${self:provider.environment.DYNAMODB_TABLE}"
functions:
create:
handler: todos/create.create
events:
- http:
path: todos
method: post
cors: true
list:
handler: todos/list.list
events:
- http:
path: todos
method: get
cors: true
get:
handler: todos/get.get
events:
- http:
path: todos/{id}
method: get
cors: true
update:
handler: todos/update.update
events:
- http:
path: todos/{id}
method: put
cors: true
delete:
handler: todos/delete.delete
events:
- http:
path: todos/{id}
method: delete
cors: true
resources:
Resources:
TodosDynamoDbTable:
Type: 'AWS::DynamoDB::Table'
DeletionPolicy: Retain
Properties:
AttributeDefinitions:
-
AttributeName: id
AttributeType: S
KeySchema:
-
AttributeName: id
KeyType: HASH
ProvisionedThroughput:
ReadCapacityUnits: 1
WriteCapacityUnits: 1
TableName: ${self:provider.environment.DYNAMODB_TABLE}
确保创建表的区域是您在 AWS 控制台中选择的区域。