将django项目部署到linux服务器上,每个依赖都要手动pip3 install,有什么办法可以批量解决

发布于 2022-09-12 23:09:21 字数 41 浏览 40 评论 0

类似java的maven包管理工具,可以批量import所有依赖呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

清浅ˋ旧时光 2022-09-19 23:09:21

一。在同等环境下创建一个虚拟环境,调试运行成功后,直接整个拷到目标机器,修改程序入口的python路径即可。
二。在开发环境下pip freeze > reuirements.txt
在目标机器上pip install -r requirements.txt

残龙傲雪 2022-09-19 23:09:21

建议使用pipreqs工具而非pip freeze导出依赖,因为pip freeze会导出当前环境的所有的依赖,但项目中未必需要如此多的包,而且部署到服务器上时,服务器默认的源未必有这些非必须包的指定版本号。而pipreqs只会导出项目里使用的包。

安装可以通过pip

pip install pipreqs

具体用法可以去查找文档,常用的命令就是

pipreqs /路径/路径/项目的目录 --encoding=utf-8

但是当当前目录是项目的目录时,需要换成./而非.--encoding=utf-8指定输出的reuirements.txt的编码格式,这个通常在linux开发环境下默认就是utf-8了。

但是我在使用中时,发现pipreqs导出的依赖未必全,比如我使用django时,就需要另外安装mysqlclient包

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文