python - Python 中的 AWS Elastic Beanstalk 环境变量

标签 python django amazon-web-services

最近我一直在尝试将 django webapp 部署到 AWS Elastic Beanstalk,一切都很顺利。但是,我的应用程序的一部分使用了该 Twitter API,因此我需要导入我的 API key 。我的理解是我应该使用配置 > 软件配置 > 环境属性。我通过输入我的 key 进行了设置,但是当我检查该站点时它仍然失败。

我一直在使用它来尝试导入变量,对吗?

import os

os.enviorn.get('TWITTER_ACCESS_TOKEN')

我检查了变量是否正在发送到服务器,当我运行 eb printenv 时,我看到了这个:

 Environment Variables:
     TWITTER_ACCESS_TOKEN = XXXXX
     TWITTER_ACCESS_SECRET = XXXX
     TWITTER_CONSUMER_SECRET = XXXX
     TWITTER_CONSUMER_KEY = XXXXX

如有任何帮助,我们将不胜感激。

最佳答案

为了从 AWS Elastic Beanstalk 属性(不是操作系统环境变量)获取系统环境,您需要将其“源”到您的环境中。对于 Python,EB 属性存储在/opt/python/current/env 文件中。所以只需运行这个命令:

source /opt/python/current/env

现在您已经更新了环境变量。

关于python - Python 中的 AWS Elastic Beanstalk 环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38768549/

相关文章:

amazon-web-services - Lighthouse 不再使用网站 - 错误 404

python - Numpy:为列表中的每个数组的 np.array 的每一行乘以 (1/2)^k

python - 类型错误 : ManyRelatedManager object is not iterable

python - 当使用 ChromeDriver 和 Selenium 设置最大属性时,无法使用 send_keys 将日期作为文本发送到日期选择器字段

python - django select_related() 和 django-mptt。如何一次获取所有 sibling ?

python - 使用 channel 制作聊天应用程序时无法理解如何根据聊天室名称定义组名称

java - 无法从 DynamoDB 表中删除项目 (java)

amazon-web-services - 使用 Lambda 和 API 网关调用 Sagemaker 端点时出错

Python 字典键缺失

python - 使用 timedelta 系列绘制直方图