conda 环境迁移

conda 环境迁移

一、本地环境备份–clone

在本地,conda 可以方便地创建环境的快照或者备份
创建一个 和 myenv环境一样的环境 snapshot

 conda create --name snapshot --clone myenv

二、相同操作系统 的计算机之间复制环境–可以生成 spec list

生成 spec list 文件:

 conda list --explicit > spec-list.txt

根据spec-list.txt重现环境:

 conda create  --name python-course --file spec-list.txt

这种方式只是将conda安装的包在另一台机器上进行了安装。pip 安装的包并没有安装需要自己安装

三、在不同的平台和操作系统之间复现项目环境。–Environment.yml

也可以使用 -export 选项生成一个 environment.yml 文件,以在 不同的平台和操作系统之间 复现项目环境。 spec list 文件和 environment.yml 文件之间的区别在于: environment.yml 文件不针对特定操作系统,并且使用YAML格式。 environment.yml 仅列出了软件包名称,由 conda 基于软件包的名称构建环境。 另一个区别是 -export 还包括使用pip安装的软件包,而 spec list 则没有。
导出 environment.yml 文件:

 conda env export > environment.yml

注意:如果当前路径已经有了 environment.yml 文件,conda 会重写这个文件

重现环境:

 conda env create -f environment.yml

四 离线相同操作平台迁移环境–Conda Pack

Conda-pack 是一个命令行工具,用于打包 conda 环境,其中包括该环境中安装的软件包的所有二进制文件。 当您想在有限或没有网络访问的系统中重现环境时,此功能很有用。上面的方法均从其各自的存储库下载软件包以创建环境。而此方法不需要。注意,conda-pack 指定平台和操作系统,目标计算机必须具有与源计算机相同的平台和操作系统。

要安装 conda-pack,请确保您位于 root 或 base 环境中,以便 conda-pack 在子环境中可用。Conda-pack 可通过 conda-forge 或者 PyPI 安装。

1、在源操作系统平台安装conda-pack

conda-forge安装:

 conda install -c conda-forge conda-pack

PyPI安装:

 pip install conda-pack
2、在源操作系统平台打包环境
# 下面三个命令选择一个命令使用
# Pack environment my_env into my_env.tar.gz
# 打包本地环境  my_env 到 my_env.tar.gz 保存到当前目录下
conda pack -n my_env

# Pack environment my_env into out_name.tar.gz
# 打包本地环境  my_env 到 out_name.tar.gz 保存到当前目录下
conda pack -n my_env -o out_name.tar.gz

# Pack environment located at an explicit path into my_env.tar.gz
# 打包本地环境  my_env 到 my_env.tar.gz 保存到指定目录/explicit/path/to/下
conda pack -p /explicit/path/to/my_env

在这里插入图片描述

重现环境:

# Unpack environment into directory `my_env`
# 在目录'/root/anaconda3/envs/'下创建一个文件夹 这个文件夹的名字就是我们的重现后的环境名,
# 创建文件夹
mkdir -p my_env
# 将环境解压到我们刚刚创建的文件夹中
tar -xzf my_env.tar.gz -C my_env
# 激活我们重现的环境 
source activate my_env

总结

1、Conda 提供了多种复制项目环境的方法。 创建环境的克隆可以提供定制的基本环境或该环境的快照。spec list 和 conda-pack 可创建特定于平台和操作系统的环境副本。 其中 spec list 使用网络来下载环境中特定的软件包,而 conda-pack 可以打包包括软件包二进制文件在内的整个环境,这在带宽不足或没有网络的情况下很有用。 Conda导出 environment.yml 的方式非常适合在不同平台和操作系统之间重新创建环境
2、conda 的环境迁移实际上就是将 原目录“/root/anaconda3/envs/”下的某一个环境复制到另一台机器的“/root/anaconda3/envs/”目录下即可

参考
https://zhuanlan.zhihu.com/p/87344422

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Linux系统中,可以使用conda环境迁移工具来实现conda环境迁移。首先,需要将要迁移环境导出为一个yml文件,可以使用以下命令导出当前环境: ``` conda env export > environment.yml ``` 接下来,在目标机器上创建新的环境,可以使用以下命令: ``` conda env create -f environment.yml ``` 这将根据导出的yml文件创建一个新的环境。另外,如果你想将已有的环境迁移到其他服务器,可以使用以下步骤: 1. 克隆要打包的anaconda环境: ``` conda create -n 新环境的名称 --clone 老环境名称 ``` 2. 进入克隆的conda环境: ``` conda activate 新环境名称 ``` 3. 安装conda-forge和conda-pack打包工具: ``` conda install -c conda-forge conda-pack ``` 4. 使用conda pack命令将当前环境打包: ``` conda pack -n 新环境名称 -o 新环境名称.tar.gz ``` 5. 打包后的文件一般保存在当前目录下,可以将该文件复制到目标服务器,并解压缩后即可使用该环境。 综上所述,以上是在Linux系统中进行conda环境迁移的步骤。希望对你有帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Linux环境conda虚拟环境迁移](https://blog.csdn.net/qq_42730750/article/details/125413470)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [Conda环境迁移](https://blog.csdn.net/weixin_54973482/article/details/123865731)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值