离线构建无服务器应用程序的最佳方法是什么?

问题描述 投票:0回答:3

我正在尝试使用aws(Nodejs)和dynamodb创建REST API。大多数时候我无法访问AWS,我需要让所有内容都脱机运行才能进行测试,并且只有在我完成了大量工作时才进行部署。是否有任何指导或良好实践可以帮助我进行开发?

提前致谢!

node.js amazon-dynamodb offline aws-serverless amazon-dynamodb-local
3个回答
4
投票

您可以在localhost上运行dynamodb的离线版本。最简单的是将它放在docker的容器中。然后你根本不需要管理它,它将适用于安装了docker的每个环境。

这是我们在无服务器应用程序的package.json脚本中所拥有的

    "start": "sls offline start",
    "start-local": "npm run force-dynamo sls offline start --stage=localhost",
    "force-dynamo": "npm run stop-dynamo && npm run start-dynamo",
    "start-dynamo": "docker run -d -p 8000:8000 dwmkerr/dynamodb -sharedDb",
    "stop-dynamo": "docker stop $(docker ps -a -q --filter ancestor=dwmkerr/dynamodb --format=\"{{.ID}}\")",

但是,如果您不太关心CI / CD管道或多个设备上的可重用性 - >您可以安装dynamoDB,运行它,并根据配置只定位您的离线/在线dynamodb。


0
投票

AWS localstack是无服务器应用程序本地开发的不错选择


0
投票

使用Sam Local作为lambda部分,使用DynamoDB Local作为DynamoDB部分。我建议使用像libik提及的docker容器在本地运行DynamoDB。

© www.soinside.com 2019 - 2024. All rights reserved.