手把手教你Anaconda装包虚拟环境迁移和实时换源

Anaconda虚拟环境完美迁移和实时换源方法

最近在多台服务器上对python深度学习的project做项目迁移,同时也需要对conda的虚拟环境也进行迁移。调研和实测很多方法,大多行不通,还遇到各种各样问题。最终通过对虚拟环境中的两种库分别处理(conda安装的库和pip安装的库)来完美解决。
包括有安装时修改配置文件和临时换源等加速方法,包挺多的但构建也就几分钟的时间,在此详细记录(2021-6-2)。

======================================================================

顺便分享俩命令行安装时直接换源最简单的方式:

conda install xxxxxx -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64/

pip instal xxxxxx -i https://pypi.doubanio.com/simple/

======================================================================

第一步:激活需要迁移的虚拟环境

conda activate xxx

第二步:conda导出yml配置文件:

conda env export > xxx.yml

注:该配置文件内包四个字段:name / channels / dependencies(pip) / prefix,其中有两处需要修改

(1)name:U-2-Net

就是虚拟环境名称

(2)channels:

可以用来换源,默认为Default(这里我用的是清华源)

此处需要修改为:

channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64/

(3)dependencies:

一级是conda安装的包列表,子级pip下是pip安装的包列表,此处需要将pip以及下方该字段的相关列表删除。

此处需要修改(就把下面四行pip包相关直接删除掉):

 - zstd=1.4.9=haebb681_0
  - pip:
    - analytics-python==1.3.1
    - appdirs==1.4.4
    - astor==0.8.1

(4)prefix: /home/changdunrui/anaconda3/envs/U-2-Net

虚拟环境路径(我的俩服务器路径一样,就没有修改,不一致时修改为目标anaconda的envs下就行)

第三步:pip导出库列表txt文件(一定要加–format):

pip list --format=freeze > xxx.txt

第四步:将生成的两个文件(xxx.yml 和 xxx.txt)拷贝到新的服务器下面

第五步:在新服务器用如下命令创建新conda环境:

conda env create -f  xxx.yml

注:两个文件得在当前目录下,此时会将yml中conda库进行安装。自测pip包安装时间过长,所以在第二步删除pip字段,在第六步单独安装pip的包。

第六步:激活已创建的虚拟环境(同第一步)并安装pip的依赖包(这里pip我用的是豆瓣源)

conda activate xxx
pip install -r xxx.txt -i https://pypi.doubanio.com/simple/

~~~~~~~~Finished!!诶,就是玩儿,搞好了再点赞+收藏有备无患

(热爱计算机视觉,喜欢学习与分享)

在这里插入图片描述
手把手教你Anaconda装包虚拟环境迁移和实时换源_第1张图片

你可能感兴趣的:(环境依赖相关,python,深度学习,anaconda)