首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用未跟踪的.env文件部署到Heroku

使用未跟踪的.env文件部署到Heroku
EN

Stack Overflow用户
提问于 2017-09-17 19:01:05
回答 1查看 1.2K关注 0票数 2

我在Heroku上部署Django应用程序有困难。

出现这个问题是因为我使用的是图书馆。我使用它是为了不暴露我的API_KEYS

这是我正在犯的错误:

代码语言:javascript
复制
  File "/app/weather/settings.py", line 20, in <module>
    API_KEY = config('API_KEY')
  File "/app/.heroku/python/lib/python3.6/site-packages/decouple.py", line 197, in __call__
     return self.config(*args, **kwargs)
  File "/app/.heroku/python/lib/python3.6/site-packages/decouple.py", line 85, in __call__
    return self.get(*args, **kwargs)
  File "/app/.heroku/python/lib/python3.6/site-packages/decouple.py", line 70, in get
    raise UndefinedValueError('{} not found. Declare it as envvar or define a default value.'.format(option))
decouple.UndefinedValueError: API_KEY not found. Declare it as envvar or define a default value.

我已经将所有变量存储在BASE_DIR + '/.env'文件中,并将该文件添加到我的.gitignore文件中。

这个问题的解决办法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-17 19:57:22

您将无法从Heroku上没有跟踪的文件中加载设置。它的文件系统是短暂的;当您的dyno重新启动时,您手动添加到其中的任何内容都将丢失。这个频繁发生

"Heroku路“是去将设置放在环境变量中。的。所有dynos都可以使用环境变量,并且有两个主要好处:

  • 您的设置不会在代码存储库中公开。
  • 您可以更改环境变量而不进行代码更改。

高兴的是,尊重3.0版以来的环境变量。您应该能够为所有设置添加环境变量,然后成功部署。(我以前没有使用过这个库,但如果您的所有设置都在环境中找到,则看起来不需要.env文件。)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46267799

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档