【问题标题】:requirements.txt vs Pipfile in heroku flask webapp deployment?Heroku烧瓶webapp部署中的requirements.txt vs Pipfile?
【发布时间】:2020-11-24 20:59:47
【问题描述】:

我正在尝试将 Flask webapp 部署到 Heroku,但我看到了关于我需要在 git 存储库中包含哪些文件的相互矛盾的信息。

我的 webapp 是在虚拟环境 (venv) 中构建的,所以我有一个 Pipfile 和一个 Pipfile.lock。我还需要requirements.txt 吗?一个会取代另一个吗?

我的另一个相关问题是如果某个包在虚拟环境中安装失败会发生什么:我可以手动将它添加到requirements.txtPipfile 吗?这会有效地做与pipenv install ... 相同的事情,还是做一些除了将包添加到需求列表之外的其他事情(考虑到 Heroku 在部署时安装包)。

【问题讨论】:

  • 对于第二点,我强烈建议您解决在本地构建库时可能遇到的任何问题。

标签: heroku pip python-venv requirements.txt pipfile


【解决方案1】:

你不需要requirements.txt

Pipenv 使用的PipfilePipfile.lock 旨在取代requirements.txt。如果您包含所有三个文件,Heroku 将忽略 requirements.txt 而只使用 Pipenv。

如果您在本地遇到特定库的构建问题,我敦促您深入研究并让所有内容都在本地计算机上运行。但这在技术上不是必需的……只要 PipfilePipfile.lock 包含正确的信息(包括哈希),Heroku 就会尝试安装您的依赖项。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-10
    • 2015-09-22
    • 2021-10-17
    • 2019-04-24
    • 1970-01-01
    • 2014-10-01
    • 1970-01-01
    相关资源
    最近更新 更多