我是virtualenv的新手,但是我正在编写django应用程序,最后我将不得不以某种方式进行部署。
因此,假设我的应用程序在安装了所有必需库的本地virtualenv上运行。我现在想做的是运行某种脚本,它将使用我的virtualenv,检查其中安装了什么,并生成一个脚本,将所有这些库安装在另一台计算机上的最新virtualenv上。如何做到这一点?请帮忙。
您无需复制粘贴您的virtualenv。您导出所有已安装软件包的列表,例如-
pip freeze > requirements.txt
然后将requirements.txt文件推送到您想要部署代码的任何位置,然后按照您在开发机上所做的操作进行操作-
requirements.txt
$ virtualenv <env_name> $ source <env_name>/bin/activate (<env_name>)$ pip install -r path/to/requirements.txt
在那里,您已经安装了带有正确版本的所有软件包。
您也可以使用以下功能查看Fabric以自动执行此任务-
def pip_install(): with cd(env.path): with prefix('source venv/bin/activate'): run('pip install -r requirements.txt')