如何在AWS ElasticBeanstalk中查看RDS_前缀环境variables?

如果您使用ElasticBeanstalk设置RDS,如何进入框(通过eb ssh )并查看将RDS应用到您的EB实例时设置的环境variables

亚马逊自动设置这些环境variables。

  • RDS_DB_NAME
  • RDS_USERNAME
  • RDS_PASSWORD
  • RDS_HOSTNAME
  • RDS_PORT

看来你只能在运行你的应用程序的过程中查看。

我想通过terminal以某种方式查看这些, eb printenv命令不显示它们。

以下是如何做到这一点。

首先ssh进入eb实例。

 eb ssh 

然后取消下面的命令

 sudo /opt/elasticbeanstalk/bin/get-config environment --output YAML 

另外 – --output YAML可以 – --output json

或者,如果你想要的话,你可以把variables传递到一个节点命令中

 #!/usr/bin/env node var strings = [] process.stdin.resume() process.stdin.setEncoding('utf8') process.stdin.on('data', function(data) { var json = JSON.parse(data) for (var key in json) { var val = json[key] strings.push(key + '="' + val + '"') } }) process.stdin.on('end', function() { var output = strings.join('\n') process.stdout.write(output) }) 

并使用source .ebextension脚本可以访问envvariables。

这是我的版本,增加了当前会话的变数

sudo /opt/elasticbeanstalk/bin/get-config environment --output yaml | sed -n '1!p' | sed -e 's/^\(.*\): /\1=/g' | sed -e 's/^/export /' > env.sh; source env.sh

它删除一个临时文件,但它的工作原理。

只是简单。

你应该去当前正在运行的应用程序的环境configuration通过弹性beanstalk。

首先像上面的答案一样进入弹性beanstalk实例。

ssh eb

如果你想显示与RDS相关的环境variables(如RDS_DB_NAME ),那么

cat /opt/python/current/env

您还将在option_settings看到aws:elasticbeanstalk:application:environment中的一些variables,之前input。

另外,如果你想应用这个环境variables,

source /opt/python/current/env

你可以通过脚本env看到这些variables