【发布时间】:2013-06-18 16:39:05
【问题描述】:
我们的团队正在使用 foreman 进行开发,并使用 .env 文件将开发端口预分配给面向服务的应用程序的每个部分。它极大地简化了这个文件只与存储库一起使用的事情,因为我们没有做任何特定的每台机器本地配置,即使多个文档似乎认为这是一个坏主意。
有人知道 Heroku 是否会自动忽略这些 .env 文件吗?如果将它们添加到 .slugignore 会怎样?
【问题讨论】:
我们的团队正在使用 foreman 进行开发,并使用 .env 文件将开发端口预分配给面向服务的应用程序的每个部分。它极大地简化了这个文件只与存储库一起使用的事情,因为我们没有做任何特定的每台机器本地配置,即使多个文档似乎认为这是一个坏主意。
有人知道 Heroku 是否会自动忽略这些 .env 文件吗?如果将它们添加到 .slugignore 会怎样?
【问题讨论】:
我设置了一个测试应用程序来尝试这个,包括 .env 文件中的 PORT=5005,然后提交/部署到 Heroku。 Heroku 似乎没有注意到它甚至在那里,当我检查 heroku config 时没有出现新的配置变量。
【讨论】:
您回答了自己的问题,但只是为了确认:.env 完全是 Foreman 构造,而 Foreman 和 Heroku 将使用 Procfile。
我们实际上希望能够确保本地部署和 Heroku 部署之间的环境一致,因此我编写了一个 python 脚本来将 .env 导出到 Heroku。
如果其他人想将.env 导出到 Heroku:
https://github.com/FinalsClub/karmaworld/blob/68f0f0340d7b6420e263cab648ff7de1ea851a0e/export_env_to_heroku.py
【讨论】: