需求
将conda创建的虚拟环境迁移到离线的电脑中(均为win10系统)
解决方法
一、先离线下载 python 离线下载 anaconda,注意和原环境相同版本anaconda,然后相同的cuda 和cuDNN(为了方便gpu版本的第三方库运行)
二、开始迁移环境
①Conda的方法:
1)联网机打开cmd 将要迁移的虚拟环境my_env 使用conda pack命令打包为 my_env.tar.gz
# 将虚拟环境 my_env 打包为 my_env.tar.gz
conda pack -n my_env
2)执行完这条命令后会在命令行的当前路径下找到一个my_env.tar.gz
的压缩包,该压缩包即为打包的环境,将该压缩包拷贝到目标计算机B上。
3)离线机在Anaconda的安装目录下打开envs文件夹,新建my_env
文件夹,将压缩 my_env.tar.gz中的文件解压到该文件夹中。打开离线机cmd命令行,输入activate my_env
activate my_env
②Pip的方法
1)生成requirements.txt 文件
联网机激活虚拟环境my_env后,输出虚拟环境中已安装包的名称及版本号并记录到requirements.txt 文件中,执行下面命令
pip freeze > requirements.txt
执行完成后,就会生成一个requirements.txt文件,内容如下
2) 安装包进行保存,将虚拟环境中的包保存在***packages***文件夹中
在requirements.txt文件所在路径下打开cmd,并激活虚拟环境,cmd执行下述命令
pip download -r requirements.txt -d packages
这样,就完成了虚拟环境的打包,一个packages文件夹,一份requirements.txt文件
3)虚拟环境移植
在离线机上创建conda虚拟环境new_env(保证新建的虚拟环境的python版本和原始环境一致),并把***packages***文件夹和***requirements.txt*** 文件放入虚拟环境的***Scripts***文件夹下。打开cmd,并激活虚拟环境,cmd执行下述命令
pip install --no-index --find-links=packages -r requirements.txt
③ 迁移单个库到离线环境中
如果只想打包单个库及对应的依赖库,以numpy为例:
1)联网机上先激活虚拟环境 ,cmd执行下述命令下载指定库
pip download numpy -d ./packages
# download后跟上包名 -d后面是文件夹名,注意:这里会将你想下载的包的所有依赖包也一并下载下来
2)到离线电脑上的虚拟环境中,先激活虚拟环境 ,cmd执行下述命令下载指定库
pip install numpy-xxxxx.whl
# numpy-xxxxx.whl为你上一步下载的文件,如果有依赖被下载,也需要先进行依赖的安装,方法一样
标签:requirements,离线,虚拟环境,conda,env,txt,my From: https://blog.csdn.net/qq_38279227/article/details/143490270