如何在本地计算机上模拟 AWS Parameter Store 以进行 lambda 函数开发?
Posted
技术标签:
【中文标题】如何在本地计算机上模拟 AWS Parameter Store 以进行 lambda 函数开发?【英文标题】:How to emulate AWS Parameter Store on local computer for lambda function development? 【发布时间】:2021-09-12 06:47:26 【问题描述】:我正在使用无服务器框架和 NodeJS 来开发我的 AWS Lambda 函数。到目前为止,我已经使用.env
文件来存储我的秘密。所以,我可以像这样在serverless.yml
中访问它们
provider:
...
environment:
DB_HOST: $env:DB_HOST
DB_PORT: $env:DB_PORT
但现在我需要使用 AWS Parameter Store 而不是 .env
文件。我试图找到有关如何在本地计算机上模拟它的信息,但我找不到。
我认为,我必须在本地和登台上使用一个无服务器配置文件。我需要一种方法来从 .env 文件(如果它是本地机器)或从 Parameter Store(如果它是 AWS Lambda)以某种方式选择 env 值。有什么办法吗?谢谢!
【问题讨论】:
【参考方案1】:它应该像这样工作:在您的 serverless.yml 中,您可以使用 $env:keyname
引用 .env
参数和使用 $param:keyname
语法的 AWS 参数。
如果你需要同时支持它们,你只需要写$env:keyname, param:keyname
。
这是一个例子:
provider:
...
environment:
ALLOWED_ORIGINS: $env:ALLOWED_ORIGINS, param:ALLOWED_ORIGINS
AUTHORIZER_ARN: $env:AUTHORIZER_ARN, param:AUTHORIZER_ARN
MONGODB_URL: $env:MONGODB_URL, param:MONGODB_URL
【讨论】:
以上是关于如何在本地计算机上模拟 AWS Parameter Store 以进行 lambda 函数开发?的主要内容,如果未能解决你的问题,请参考以下文章
如何访问在 AWS EC2 Ubuntu 的本地主机上运行的 Parse 服务器?
Dart/flutter:如何在模拟器的本地主机上显示来自 API 的图像
如何在本地主机上模拟 HTTP POST(*Windows* 不是 Unix)? [复制]