我正在使用无服务器框架和 NodeJS 来开发我的 AWS Lambda 函数。到目前为止,我已经使用 .env
文件来存储我的 secret 。所以,我可以像这样在 serverless.yml
中访问它们
provider:
...
environment:
DB_HOST: ${env:DB_HOST}
DB_PORT: ${env:DB_PORT}
但现在我需要使用 AWS Parameter Store 而不是 .env
文件。我试图找到有关如何在我的本地计算机上模拟它的信息,但找不到。
我认为,我必须在本地和暂存中使用一个无服务器配置文件。我需要一种方法以某种方式从 .env 文件(如果它是本地计算机)或从 Parameter Store(如果它是 AWS Lambda)中选择 env 值。有什么办法吗?谢谢!
最佳答案
它应该像这样工作:在您的 serverless.yml 中,您可以使用 ${env:keyname}
引用 .env
参数,使用 $ 引用 AWS 参数{param:keyname}
语法。
如果你需要同时支持它们你只需要写${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}
关于node.js - 如何在本地计算机上模拟 AWS Parameter Store 进行 lambda 函数开发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68189184/