如何解决Elastic Beanstalk for AL2中的环境变量在哪里?
我正在使用L[x]
来部署elastic beanstalk
应用。我想在Django
实例上SSH
执行一些shell命令,但是环境变量似乎不存在。我通过AWS GUI(配置->环境属性)指定了它们,它们似乎在我的应用程序启动期间起作用。
我尝试通过以下方式激活和停用虚拟环境:
EC2
是否存在一些环境(或我可以运行的脚本)来访问设置了所有属性的环境?否则,由于没有配置设置模块(我知道如何手动指定它,但我的应用需要大约7个变量才能工作),因此我几乎无法运行诸如source /var/app/venv/*/bin/activate
之类的命令。
解决方法
来自this AWS knowledge center post:
重要提示:在 Amazon Linux 2 上,所有环境属性都集中在一个名为 /opt/elasticbeanstalk/deployment/env
的文件中。您只能在 Elastic Beanstalk 的应用程序部署过程中使用此文件。 ...
该博文介绍了如何在部署期间制作 env
文件的副本、使用 .platform
挂钩以及如何设置权限以便您以后可以访问该文件。请注意,在部署期间,您的 .platform
钩子脚本可以随时使用环境属性。
您也可以使用 SSH 手动执行类似的步骤。设置好副本并获得适当的权限后,您就可以source
它。
当心:
注意:带有空格或特殊字符的环境属性由 Bash shell 解释,并可能产生不同的值。
, ssh进入EC2实例后,尝试运行命令/opt/elasticbeanstalk/bin/get-config environment
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。