之前我们介绍了如何安装及使用python虚拟环境。在开发过程中如果我们想在其他电脑上新建和当前使用的虚拟环境一致的虚拟环境,当然,我们可以一条条的执行pip命令进行安装,但是如果我们以来十几个安装包,想想就头大了。那我们该怎么办呢。以易用性著称的python当然会给出好的解决方案,仅需几行命令我们就可以实现将现有的虚拟环境就进行备份和还原。这里我们考虑两种情况,一种是新建虚拟环境的那台主机可以联网,一种是新建虚拟环境的那台主机不能联网。
其实,我们要做的事情十分简单,就是将我们正在使用的虚拟环境进行一次备份和还原。当新建虚拟环境的那台主机可以联网时,我们只需要将我们已经正在使用的虚拟环境已经安装的依赖列表导出一份,然后再在新的主机上将列表中的进行安装就可以了。
首先是在原来的主机上的虚拟环境下执行:
pip freeze > packages.txt #导出使用whls清单
这里有兴趣的同学可以了解一下pip list和pip freeze的区别。
然后在新的主机上激活新建的虚拟环境,执行下面的命令,进行在线安装:
pip install -r requirements.txt #在线安装
当我们新的主机没有办法联网时就需要我们在可以在我们原来的主机上执行如下命令:
pip download -d whls -r requirements.txt
whls是我们自己新建的存放下载的的目录,这个意思就是,将我们现有的虚拟环境的依赖列表导出,并且下载,然后我们将这个whls文件夹打包压缩,拷贝到新的主机上去。
我们需要先在在新的主机上解压我们的whls压缩包,然后激活新建的虚拟环境,并且执行下面的命令:
pip install --no-index --find-links=whls -r requirements.txt #离线安装
这里因为新的主机是不能联网的,所以我们增加了--no-index说明这是离线安装,并且指明了查找安装包的离线目录。