首页 > 解决方案 > python虚拟环境部署最佳实践

问题描述

对不起,如果这在另一篇文章中得到了回答。

我对 python 非常陌生,并且正在学习虚拟环境。我知道我应该在虚拟环境中安装所有库并创建requirement.txt,以便其他人可以使用它进行安装。但是,我不确定部署到生产的最佳实践是什么?

我问的原因是没有人可以访问生产环境,部署是通过预定义的管道,我的理解是它将压缩我所有的代码并将其部署到生产中,没有人认为进入生产环境做任何手工工作。我可以尝试让管道运行脚本以根据requirement.txt安装所有库,但我不确定防火墙设置是否相同。我也应该打包这些库吗?

另外,我应该如何触发python脚本?我应该有一个包装脚本在调用 python 脚本之前激活 vevn 并在之后停用它吗?还是有更简单的方法?

标签: python-3.xdeploymentvirtualenv

解决方案


为了让您的程序在任何地方工作,无论是生产还是开发,它都需要所需的库。通常所做的是,我们在服务器上创建一个新的虚拟环境(就像 Booboo 所说的'python -m venv <env_name>')并安装所有必需的包(pip install -r requirements.txt)('requirements. txt' 应该在您的开发机器上使用 'pip freeze > requirements.txt' 创建)

既然你说不允许任何人直接访问生产服务器,那肯定有一些步骤,你的系统管理员希望你遵循。在这种情况下,只有他/她可以帮助您。至于防火墙,如果您的程序服务于某个端口,并且如果您的程序必须可以从 localhost 以外的其他计算机访问,则必须打开该特定端口。这是您的服务器管理员应该为您做的事情。


推荐阅读