使用cond打包虚拟环境并在离线安装,避开常见坑!!!

最近工作遇到在没有网络的情况下建虚拟环境,首先是可以先下载所有包(.whl文件),在离线情况下安装,但是适合单个包,整个环境不建议,因为会有大量依赖包,少一个都不行。

虚拟环境打包工具

1.win+R并输入cmd

在这里插入图片描述

2.pip安装conda-pack

pip install conda-pack

安装成功后,开始对虚拟环境打包

虚拟环境打包

1.激活需要打包的环境

activate <env_name>

在这里插入图片描述

2.检查环境安装的包

#用于查看conda安装的所有包
conda list
#用户查看pip安装的所有包
pip list

通常安装的包既有conda的也有pip的(比如你安装用的conda,但是更新用的pip),使用是没有问题的,但是打包会出现问题,因为有的包既在pip里也在conda里,打包时会报错,如下:

_CondaPackError: 
Files managed by conda were found to have been deleted/overwritten in the
following packages:
 
- pip='9.0.1'
 
This is usually due to `pip` uninstalling or clobbering conda managed files,
resulting in an inconsistent environment. Please check your environment for
conda/pip conflicts using `conda list`, and fix the environment by ensuring
only one version of each package is installed (conda preferred).

唯一的解决办法是只用conda安装或者pip安装,由于一些包conda没有,所以最好是用pip安装所有包。下面我将介绍如何从头开始建虚拟环境和安装包。

3.离线创建虚拟环境

如果你的conda和pip都有安装包,那么你可以重建一个环境并只用pip安装。首先,离线创建一个空的虚拟环境,不要加python版本,因为会直接使用conda安装。

conda create -n env_name --offline

–offline是离线创建的意思,不会安装任何包。
在这里插入图片描述
激活环境后,查看安装的包:
在这里插入图片描述
可以看到conda list是空的,我们继续用pip安装,现在安装的包里没有python,接下来我们安装python。

4.安装python和其他包

https://www.python.org/downloads/
在这里下载对应版本的python,需要.exe格式的

这里需要注意的是路径配置
在这里插入图片描述
找到你的conda/envs这个是存放你的虚拟环境的位置,图上的dd是环境名字,改成你自己创建的环境名字就行,比如上面创建的zz,我只做演示没有修改。安装成功后,pip也会更新为最新的。你可以通过conda list查看是否为空。如果是,说明没有 任何问题,剩下你所用的包,全部用pip进行安装。

4.虚拟环境打包

接下来我们就可以打包了,输出的是一个tar.gz格式文件

conda pack -n <虚拟环境名字> -o 文件输出的地址

-o是可选项。

4.虚拟环境打包

在新的机器上,找到conda/envs文件夹,将压缩放在这个文件夹里,并解压,就ok了,你可以通过激活该环境查看是否成功。

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值