Conda虚拟环境的复制和迁移

news2024/11/15 9:28:52

Conda虚拟环境的复制和迁移

在本机复制Conda虚拟环境

conda create --name snapshot --clone myenv

相同操作系统之间复制环境

方法一:requirements.txt

这个方法不推荐,因为只会导出你使用pip安装的依赖包,不会导出虚拟环境所依赖的包,并不适用于虚拟环境的迁移的应用场景。

事实上,此方法比较适用于,已经明确知道依赖哪些包,我们只需要package信息的情况,如写项目文档,告诉别人运行我这个系统必须安装哪些依赖包。而忽略虚拟环境本身的依赖环境。

pip freeze > requirements.txt  # 生成requirements.txt
pip install -r requirements.txt  # 从requirements.txt安装依赖

方法二 : Environment.yml

跨平台和操作系统共享项目环境也可以使用 -export 选项生成 environment.yml 文件来完成。规范列表和 environment.yml 文件之间的区别在于 environment.yml 文件不是特定于操作系统的,而是使用 YAML 格式化的。只列出包名,conda根据包名搭建环境。另一个区别是 -export 还包括使用 pip 安装的包,而 spec 列表不包括。要导出 environment.yml 文件:

conda env export environment.yml
  • 请注意,如果路径中已有 environment.yml 文件,conda 将覆盖该文件。创建环境:
conda env create -f environment.yml

方法三:Conda Pack

Conda-pack 是一个命令行工具,用于打包 conda 环境,其中包括环境中安装的包的所有二进制文件。此法支持断网环境下使用。Environment.yml 是从python依赖包各自的存储库中下载包来创建环境,缺点当然是网速慢、容易下载失败等等。此法就没有这个问题。

请记住,conda-pack 是特定于平台和操作系统的,目标计算机必须具有与源计算机相同的平台和操作系统。
要安装 conda-pack,请确保您处于 root 或 base 环境中,以便它在子环境中可用。 Conda-pack 可在 conda-forge 或 PyPI 获得。

conda-forge:

conda install -c conda-forge conda-pack

PyPI:

pip install conda-pack

打包环境:

# Pack environment my_env into my_env.tar.gz
$ conda pack -n my_env

# Pack environment my_env into 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
$ conda pack -p /explicit/path/to/my_env

复制环境到其他电脑上:

# Unpack environment into directory `my_env`
$ mkdir -p my_env
$ tar -xzf my_env.tar.gz -C my_env

# Use Python without activating or fixing the prefixes. Most Python
# libraries will work fine, but things that require prefix cleanups
# will fail.
$ ./my_env/bin/python

# Activate the environment. This adds `my_env/bin` to your path
$ source my_env/bin/activate

# Run Python from in the environment
(my_env) $ python

# Cleanup prefixes from in the active environment.
# Note that this command can also be run without activating the environment
# as long as some version of Python is already installed on the machine.
(my_env) $ conda-unpack

方法四:直接复制envs目录下的虚拟环境文件夹

在断网环境下,我们也可以直接从源电脑(以下统称为src电脑)上直接将虚拟环境整个复制到目标电脑(以下统称为target电脑)上。前提是target计算机必须具有与src计算机相同的平台和操作系统。

1、target电脑上安装相同版本的Anaconda。

2、从src电脑把envs文件夹中需要复制的虚拟环境文件夹复制到target电脑上,位置随便放。

我们可以通过以下命令来查看src电脑上虚拟环境文件夹的存放路径:

conda env list

image-20230426143639701

已上图为例,E:\ProgramData\Anaconda\envs\new_name 就是虚拟环境new_name的存储路径。我们将它直接复制到target电脑上即可。

image-20230426143959988

3、在target电脑上,进入conda命令行,使用如下命令:

conda config --add envs_dirs %复制到target电脑上的envs路径%

注意: 这里的路径是目标虚拟环境文件夹的上级目录!

举个例子:

我将上图中的new_name复制到了target电脑上,并重命名为:env_pybd。路径为G:\anoconda_envs\env_pybd

image-20230426152249543

那么我应该用conda执行命令:

conda config --add envs_dirs G:\anoconda_envs\

运行成功后,会往 C:\user%当前用户名%\.condarc 里面添加一条envs_dirs记录,如下图所示:

image-20230426152437166

再运行

conda env list

就可以看到,我们已经复制成功了:

image-20230426152756755

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/467336.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SQL应用题分析

SQL应用题的一般考点: 基本表的查询(单表、多表、嵌入、分组、排序)、向表中插入数据、更新数据、建立视图 关系代数替换sql,使用关系代数来进行查询 基本上就这几点 SQL基本表的插入、更新和建立视图都是死板的,只…

前端开发:CSS中@import指令详解

前言 在前端开发过程中,关于CSS的使用也是非常的,尤其是样式相关的设置等操作。作为前端开发者关于import指令都会有所了解,尤其是在导入CSS样式的时候会用到,但是刚入行不久的前端开发者对应import指令会有所陌生。那么本文就来分…

项目管理:我该怎么安排下属的工作

在刚开始做项目经理的时候,分配任务时会局限于这样的心理:以前我们都是平级的同事,现在我比他们高一个级别了,我说的话他们会不会听啊。 在这个阶段,大部分项目经理都缺乏自信,觉得在项目成员心中威望不足…

Linux shell编程 条件语句if case

条件测试 test命令 测试表达式是否成立,若成立返回0,否则返回其他数值 格式1: test 条件表达式 格式2: [ 条件表达式 ]文件测试 [ 操作符 文件或者目录 ][ -e 1.txt ]#查看1.txt是否存在,存在返回0 echo $? #查看是上一步命令执行结果 0成…

15天学习MySQL计划-存储过程变量判断循环游标函数触发器(进阶篇)-第九天

15天学习MySQL计划-存储过程/变量/判断/循环/游标/函数/触发器(进阶篇)-第九天 存储过程 1.介绍 ​ 存储过程是事先经过编译并存储是数据库中的一段SQL语句的集合,调用存储过程可以简化应用开发人员的很多工作,减少数据在数据库…

SR常用数据集介绍

1.Download Link: 1.DIV2K: DIV2K Dataset 2.Set5:【实践与问题解决28】最全超分辨率(SR)数据集介绍以及多方法下载链接_超分辨率数据集_呆呆象呆呆的博客-CSDN博客 3.Set14:【实践与问题解决28】最全超分辨率(SR)数…

Java --- springboot2的静态资源配置原理

目录 一、静态资源配置原理 1.1、配置类只有一个有参构造器 1.2、资源处理的默认规则 1.3、欢迎页的处理规则 一、静态资源配置原理 springboot启动默认加载xxxAutoConfiguration(自动配置) springmvc功能的自动配置类,生效 Configuration(proxyBeanMethods …

Find My资讯|苹果iOS 17将增强Health应用、引入情绪追踪器

彭博社的马克・古尔曼表示,苹果计划在 iOS / iPadOS 17 系统中,为 iPhone / iPad 用户引入几项和健康相关的新功能。其中最值得关注的一款新应用,可以追踪用户的情绪。 苹果计划进一步增强 Health 应用,引入视力状况相关的功能。…

Python小姿势 - # Python网络爬虫之如何通过selenium模拟浏览器登录微博

Python网络爬虫之如何通过selenium模拟浏览器登录微博 微博登录接口很混乱,需要我们通过selenium来模拟浏览器登录。 首先我们需要安装selenium,通过pip安装: pip install selenium 然后我们需要下载一个浏览器驱动,推荐使用Ch…

【翻译一下官方文档】认识uniCloud云数据库(基础篇)

我将用图文的形式,把市面上优质的课程加以自己的理解,详细的把:创建一个uniCloud的应用,其中的每一步记录出来,方便大家写项目中,做到哪一步不会了,可以轻松翻看文章进行查阅。(此文…

虹科活动丨2023第十三届药品质量安全大会精彩回顾

由中国社会科学院食品药品产业发展与监管研究中心、北京中培科检信息技术中心联合主办的2023第十三届(春季)全国药品质量安全大会暨展览会圆满结束,会上众多优秀企业齐聚一堂,分享独家产品,交流行业知识。 在生物科学…

vCenter(PSC)正常更改或重置administrator@vsphere.local用户的密码方法

1. 正常更改administratorvsphere.local用户密码 在vCenter界面中选择“菜单”下的“系统管理”,如下图所示: 然后在Single Sign On下的用户和组中,选择“vsphere.local”域,再对Administrator用户进行编辑,即可进行…

一图看懂 certifi 模块:证书路径, 资料整理+笔记(大全)

本文由 大侠(AhcaoZhu)原创,转载请声明。 链接: https://blog.csdn.net/Ahcao2008 一图看懂 certifi 模块:证书路径, 资料整理笔记(大全) 摘要模块图及类关系图类关系图模块全展开【certifi】统计常量模块1 certifi.core 函数2 co…

【c语言】详解宏定义#define 各种使用方法

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; 给大家跳段街舞感谢支持&#xff01;ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ…

vue+Nodejs+Koa搭建前后端系统(三)--koa-generator项目优化修改

前言 计算机系统为Windows 10 专业版 修改package.json配置 原package.json文件中scripts字段的配置字段为&#xff1a; 在终端运行 npm run dev可能会报错 ‘.’ 不是内部或外部命令&#xff0c;也不是可运行的程序或批处理文件。 解决方法就是修改package.json文件中dev…

Apache Zeppelin系列教程第一篇——安装和使用

一、Apache Zeppelin 介绍 Apache Zeppelin是一种开源的Web笔记本类型交互式数据分析工具&#xff0c;它提供了基于浏览器的界面&#xff0c;允许数据工程师和科学家通过各种语言和工具&#xff0c;如Scala, Python, SQL, R,等等&#xff0c;交互式地进行数据分析、可视化以及…

Word控件Spire.Doc 【脚注】字体(2): 在C#, VB.NET中设置Word字体

Spire.Doc for .NET 是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下&#xff0c;轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具&#xff0c;专注于创建、编辑、转…

执行kubectl命令失败server was refused问题解决

在宿主机上执行kubectl 命令时&#xff0c;出现如下错误 [rootroot ~] kubectl get namespaces The connection to the server xxx.xx.xx.xx:6443 was refused - did you specify the right host or port? 然后再网上找寻解决方案&#xff0c;发现各种各样的解决方案都存在。…

API淘宝数据接口

如果你想在自己的应用中使用淘宝的数据&#xff0c;那么对接淘宝数据接口是必不可少的一步。本文将介绍如何对接API淘宝数据接口&#xff0c;以便你能够顺利获取和使用淘宝的数据。 步骤一&#xff1a;​​获取App Key和App Secret​​ 首先&#xff0c;在淘宝开放平台申请AP…

深入浅出:CAN通信之CCP协议

CCP(CAN Calibration Protocol) CAN标定协议(用于标定系统与ECU之间的通信) CCP协议在应用层&#xff0c;使用CAN的数据帧来传输命令 CRO数据帧(主设备想从设备发送) CRO报文&#xff1a;CCP报文帧格式为CMD CTR DATA&#xff0c;即Command、Counter、Data&#xff0c;其中…