本地搭建 serverless-offline 与 DynamoDB 环境
该内容并非本站原创,只因原内容字体太小、排版较乱,学习不便,故重新整理发布,如有侵权请联系删除[yestool666#gmial.com] 同时可点击底部github移步出处
这次我们将基于之前的文章《Serverless 应用开发指南:Lambda + API Gateway + DynamoDB 制作 REST API 》中的 todolist,来开始我们的调试之旅。
在之前的示例里,我们使用了 DynamoDB 来存储数据。在这篇文章里,我们也将介绍 serverless-dynamodb-local
来在本地运行 DynamoDB。
在那之前,如果你还没有之前的代码,请先安装服务到本地:
npm install -u https://github.com/phodal/serverless-guide/tree/master/aws-node-rest-api-with-dynamodb -n dynamodb-offline
然后,在我们的项目里安装 serverless-offline
插件:
yarn add --dev serverless-offline
并安装 serverless-dynamodb-local
插件:
yarn add --dev serverless-dynamodb-local
然后,在 serverless.yml
中添加相应的插件:
plugins:
- serverless-offline
- serverless-dynamodb-local
紧接着,还需要进行相应的 dynamodb 配置:
custom:
dynamodb:
start:
port: 8000
inMemory: true
migrate: true
migration:
dir: offline/migrations
其中的 migration 对应的是本地的 Scheme,位于 offline/migrations/todos.json
,内容如下:
{
"Table": {
"TableName": "serverless-rest-api-with-dynamodb-dev",
"KeySchema": [
{
"AttributeName": "id",
"KeyType": "HASH"
}
],
"AttributeDefinitions": [
{
"AttributeName": "id",
"AttributeType": "S"
}
],
"ProvisionedThroughput": {
"ReadCapacityUnits": 1,
"WriteCapacityUnits": 1
}
}
}
然后,执行:
serverless dynamodb install
以安装 DynamnoDB 的本地版本。
一切准备妥当了,我们可以进行测试了。