培森的Blog 未分类 Conda 常用操作,有网/离线环境导入导出

Conda 常用操作,有网/离线环境导入导出

查看可用环境: conda info –envs 更换环境(如py311): source activate…

查看可用环境:

conda info --envs

更换环境(如py311):

source activate py311

有网环境

  1. 导出当前环境:

    conda env export > py311.yaml

  2. 会生成一个py36.yaml文件,将其复制到目标机上后执行导入环境操作:

    conda env create -f py311.yaml

  3. 注意:若导出base环境,则在目标机上会提示已存在(而且base环境无法删除)。所以要想导出base,最好先复制一下,再导出复制品:

    conda create -n new_name --clone base

  4. 再导出new_name环境即可。必要的话再在原机删除复制环境:

    conda remove -n new_name --all

在用的时候发现有些module还是未安装,上网找了下原因,原来以上只会导出conda命令直接安装的包,而我的包大多是用pip安装在Anaconda的lib和site-package里了。因此还要用导出pip的方法:

  1. pip导出安装的库到pip.txt:

    pip freeze > pip.txt

  2. pip导入pip.txt中列出的库到新机:

    pip install -r pip.txt

其实就是按列表重新安装一遍,导出的列表可以自己先看一眼,筛掉一些脑抽安装的没用包

无网环境

  1. 在conda的base环境中安装conda-pack;

    pip install conda-pack

  2. 打包一个环境

    conda pack -n my_env
    conda pack -n my_env -o out_name.tar.gz
    conda pack -p /explicit/path/to/my_env

  3. 重现

    mkdir -p my_env
    tar -xzf my_env.tar.gz -C my_env
    ./my_env/bin/python
    source my_env/bin/activate

(my_env) $ python
(my_env) $ conda-unpack
  1. pip download
    保存虚拟环境到requirements.txt

    pip list --format=freeze > requirements.txt

  2. 下载依赖包到指定目录

    pip download -r requirements.txt -d "/home/admin/packs" -i https://pypi.tuna.tsinghua.edu.cn/simple

  3. 将requirements.txt和依赖包拷贝到目标服务器

  4. 在目标服务器创建conda虚拟环境

    conda create -n my_env python=3.6.5 pip=10.0.1 --offline
    备注:
    --offline:指定离线创建虚拟环境;
    python=3.6.5 & pip=10.0.1:指定默认的python版本号、并安装pip工具,如果不安装pip,则改虚拟环境使用默认的pip工具,就无法将依赖包安装到新虚拟环境。Anaconda自带的package在> anaconda3/pkgs目录下,可自行查看;

  5. 切换到虚拟环境,并安装依赖包

    pip install -U --no-index --find-links=./packs -r requirements.txt

  6. 备注: 若出现Cannot uninstall 'xxxx'. It is a distutils installed project and thus we cannot accurately det...(xxx是某package的名称),使用如下命令进行解决:

    pip install -U --ignore-installed --no-index --find-links=./packs xxx

本文来自网络,不代表培森的Blog立场,转载请注明出处:https://blog.xupeisen.com/archives/1100

作者: 培森

联系我们

联系我们

13262951234

在线咨询: QQ交谈

邮箱: admin@xupeisen.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部