【发布时间】:2020-07-01 18:25:44
【问题描述】:
我有一个存储在 AWS Systems Manager Parameter Store 中的数据库连接字符串,我想将它传递给 Elastic Beanstalk 实例的环境变量。我不想将其提交到源代码,也不想依赖部署者在部署时设置值或通过 Web 控制台手动执行。
我已经尝试过像 {{resolve:ssm:DATABASE_CONNECTION_STRING:1}} 这样的动态引用(带和不带反引号),它们在 CloudFormation 堆栈中有效,但在 Elastic Beanstalk 配置中无效。
我尝试过使用container_commands 之类的
export DATABASE_CONNECTION_STRING=`aws ssm get-parameter --name DATABASE_CONNECTION_STRING --region eu-west-1 --query Parameter.Value --output text
但是 Elastic Beanstalk 实例没有正确的权限,我不确定如何设置它们。
我尝试使用 files: 和 source: 从 S3 文件的内容创建文件,但出现错误。
理想情况下,动态引用会起作用,例如.ebextensions/env.config =>
OptionSettings:
aws:elasticbeanstalk:application:environment:
DATABASE_CONNECTION_STRING: {{resolve:ssm:ANNOTATOR_DATABASE_CONNECTION_STRING:1}}
【问题讨论】:
标签: python amazon-web-services amazon-elastic-beanstalk