Se você configurar o RDS com o ElasticBeanstalk, como poderá acessar a caixa (via eb ssh
) e visualizar as variáveis de ambiente definidas ao aplicar o RDS à sua instância EB?
A Amazon configura automaticamente essas variáveis de ambiente.
RDS_DB_NAME
RDS_USERNAME
RDS_PASSWORD
RDS_HOSTNAME
RDS_PORT
Parece que você só pode visualizar no processo que executa seu aplicativo.
Eu gostaria de visualizá-los através do terminal de alguma forma, o eb printenv
comando não os mostra.
Veja como fazer isso.
Primeiro
ssh
na instância eb.Então un o seguinte comando
Alternativamente
--output YAML
pode ser--output json
.Ou, se quiser, pode canalizar as variáveis para um comando de nó como este:
E use
source
para que os.ebextension
scripts tenham acesso às variáveis env.Simples.
Você deve ir para as configurações de ambiente do aplicativo atual que está sendo executado no seu beanstalk elástico.
Primeiro ssh na instância elastic beanstalk como a resposta acima.
ssh eb
Se você quiser mostrar as variáveis de ambiente relacionadas ao RDS (como
RDS_DB_NAME
), entãocat /opt/python/current/env
Você também verá algumas variáveis de
aws:elasticbeanstalk:application:environment
inoption_settings
juntas, digitadas antes.Além disso, se você quiser aplicar essas variáveis de ambiente,
source /opt/python/current/env
E você pode ver essas variáveis por script
env
Aqui está minha versão que adiciona os vars à sessão atual
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
Ele descarta um arquivo temporário, mas funciona.