amazon-web-services - 使用 AWS CodeDeploy 的环境变量

标签 amazon-web-services environment-variables aws-code-deploy

我有一个 Web 应用程序,它利用环境变量进行某些配置(数据库凭据、API key 等)。我目前正在使用 Elastic Beanstalk 进行部署,并且可以在 AWS 中轻松设置这些,这很棒,因为我的代码库中没有这些敏感数据。

但是,我正在考虑从 Elastic Beanstalk 进行切换,以便我可以在 Web 实例中利用更多的灵 active ,并且自然地我正在考虑使用 CodeDeploy 进行部署(从我的 Codeship CI 设置)。 CodeDeploy 相当简单,我已经将它与 Codeship 集成得很好,但我注意到没有像 Elastic Beanstalk 那样使用 CodeDeploy 设置环境变量的内置功能。有人有这个过程的最佳实践吗?

最佳答案

我发现设置环境变量的一种方法是通过在 AfterInstall Hook 期间运行脚本(在 appspec http://docs.aws.amazon.com/codedeploy/latest/userguide/app-spec-ref.html 中指定)。

我可以通过调用我的实例元数据来确定我当前在这些脚本中部署的环境,我可以在其中获取实例 ID,然后利用 aws cli 执行过滤到我的实例 ID 的描述标签,其中我有环境标签集

ID=$(curl "http://169.254.169.254/latest/meta-data/instance-id")
aws --region us-east-1 ec2 describe-tags --filters Name=resource-id,Values=$ID Name=key,Values=Environment

我不喜欢这个,但在 Code Deploy 有内置的东西来将参数传递给应用程序规范之前,这是我能找到的最好的。

关于amazon-web-services - 使用 AWS CodeDeploy 的环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28523542/

相关文章:

sql - 有没有办法在 AWS Redshift 中将 VARCHAR 转换为 DATE?

ruby - 如何使用puppet在服务器上设置环境变量?

windows - 在 Windows 上从浏览器运行批处理文件,但不继承浏览器的环境变量

amazon-web-services - AWS : Code deploy installation failed

amazon-web-services - 是否可以使用任何 IDE(例如 PYCHARM)在 AWS 实例中进行 SSH 连接?

amazon-web-services - 有没有办法枚举在 AWS 账户中创建的所有 CloudFormation 宏?

javascript - 如何检查或验证用户是否使用 AWS Cognito Javascript 登录?

Linux。将文件内容设置为环境变量时如何保留行?

amazon-web-services - 从命令行重新部署 AWS CodeDeploy

amazon-web-services - 没有 appspec 文件的 AWS cli 创建部署