Anaconda虚拟环境迁移指南

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

Anaconda虚拟环境迁移方法

  • 一、方法一
  • 二、方法二
  • 三、方法三
  • 三、方法四

  • 将一个 Conda 环境从一台服务器迁移到另一台服务器,如果你希望直接通过打包和解压的方式来完成,可以按照以下方法实现


    一、方法一

    适合离线环境, 在目标环境无法联网或者网络不畅时很好用
    1. 先安装conda pack

    pip install conda-pack
    # 或者
    conda install conda-pack
    

    2. 查看要打包的conda环境

    conda info -e
    

    3. 压缩conda环境

    conda pack -n your_conda_env	# 会自动压缩为your_conda_name.tar.gz
    #或
    conda pack -n your_conda_env -o out_name.tar.gz	# 自定义压缩包名
    #或
    conda pack -p /your/path/to/your_conda_env	# 打包指定目录下的环境
    

    4. 将压缩包拷贝到目标环境
    目标环境需要和源环境是相同平台和操作系统
    5. 在目标环境anaconda/env下创建文件夹并解压

    cd ~/anaconda/env
    mkdir your_conda_name
    cd your_conda_name
    sudo tar -zxvf your_conda_env.tar.gz
    

    激活环境

    conda activate your_conda_env
    

    在某些情况下,你可能需要重新链接二进制文件,尤其是在不同操作系统或不同架构的机器之间迁移时。你可以使用 conda-unpack 命令在目标机器上完成这个过程:

    conda-unpack
    

    6.查看并使用conda环境

    conda info -e
    conda activate your_conda_env
    

    二、方法二

    需要联网, 适合不同平台和操作系统之间重新创建环境, 安装起来很费时

    1. 首先导出conda list

    conda list -e > my_requirements.txt		# -e是export
    

    2. 在目标环境根据my_requirements.txt创建虚拟环境

    conda create --name virtual_env_name --file my_requirements.txt
    

    这一步相当于把my_requirements.txt中的软件包都重新安装一遍, 很慢

    三、方法三

    scp将环境文件夹拷贝到目标主机上,可以局域网访问的两台主机之间

    scp -r ~/anaconda/env/my_conda_env user@ip:~/anaconda/env
    

    拷贝完成后conda info -e可看到my_conda_env , 激活后可使用

    conda info -e
    conda activate my_conda_env
    

    三、方法四

    通过–clone先克隆一个环境再conda pack打包迁移,这种方式和方法1的区别就是先执行–clone先克隆了一份环境, 其他一样, 不推荐

    conda create --name new_env_name --clone old_env_name
    # 或者
    conda create -n new_env_name --clone old_env_name
    # 或
    conda create -n new_env_name --clone /path/to/your/env
    

    作者:Rodgers-

    物联沃分享整理
    物联沃-IOTWORD物联网 » Anaconda虚拟环境迁移指南

    发表回复