conda环境的移植

**

移植conda环境

**
如果想移植自己Conda的环境或者其它人的conda环境,
1.查看当前conda所有的环境

source activate # 激活base环境。如果是移植其它人的环境,则激活其它人conda环境
./conda info --envs # 查看所有环境。如果是查看其它人的conda环境,需要写他人conda的绝对路径

conda环境的移植_第1张图片

2.进入所要移植的环境

source sciclone  # 进入sciclone  环境 。如果是移植base环境,则在base环境

3.导出当前环境

conda env export > freeze.yml

4.修稿yml文件的配置 name和 prefix。name是安装的环境新名称,prefix是安装环境路径。(如果导入的是其它人的base环境,name默认是 base ,会和你自己当前的conda base环境名字冲突,所以需要改个名字)
conda环境的移植_第2张图片
conda环境的移植_第3张图片

4.安装环境

# 如果是移植其他人环境,这里安装前需要激活到自己conda的环境
 conda env create -f freeze.yml

4.1 有可能yml文件中会有·-pip: 这些之前pip安装过的包,在yml中可能装不上(或者等的时间很久)。所以先在yml中删掉 -pip:和下边的内容。在上边加上 -pip 。执行 conda env create -f freeze.yml 安装。

4.2 在导入环境的原始环境下, 用 pip freeze > requirements.txt 命令将原环境pip安装的包导出到 requirements.txt激活安装yml后的环境,用 pip install -r requirements.txt 安装pip的环境。如果有个别包报错,可以先删掉,后边单独装
conda环境的移植_第4张图片

安装完成后激活

**

其它打包方法

**(未测试,这种方法解压后可以直接用,不用再安装yml中的模块,不过base环境貌似打包不了)
首先激活conda环境,安装 conda-pack 。若不激活base环境,安装conda-pack 需要root权限。

conda install conda-pack

安装完成后

conda pack -n 打包的环境名 -o 输出文件名.tar.gz 

解压

tar -zxvf 输出文件名.tar.gz 

激活

source activate 环境名

或者直接克隆

p可以是 环境名或者路径(图片中第2列) ,–clone 可以使环境名或者路径(如果是移植到另一台机器,这里可以先把环境复制到新机器,然后用下面命令)

conda create -p ./conda_py38/envs/new_base --clone /root/miniconda3

conda环境的移植_第5张图片

你可能感兴趣的:(软件,python)