Conda环境导出与导入的实现

 更新时间:2023年03月20日 09:57:52   作者:彭祥.  
本文主要介绍了Conda环境导出与导入的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

博主在进行实验过程中由于需要频繁更换服务器,而每次更换服务器后便少不了进行环境配置,尽管有requirement.txt的帮助,配置环境时也是需要费一番功夫。因此想到conda的环境导出与导入功能。

具体过程如下:

环境导出

# -n 后面的参数是服务器A要克隆的环境名称,> 后跟着我们要保存的路径文件名称
conda env export -n yolos > /data/yolos.yaml

如下:

ubuntu@VM-0-17-ubuntu:/$ conda env export -n yolos > /data/yolos.yaml

当然我么也可以先切换到我们想要导出的conda环境中再进行导出。

ubuntu@VM-0-17-ubuntu:/$ source activate yolos
(yolos) ubuntu@VM-0-17-ubuntu:/$ conda env export >/data/dino.yaml

导出的文件如下:

name: yolos
channels:
  - defaults
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - blas=1.0=mkl
  - ca-certificates=2023.01.10=h06a4308_0
  - certifi=2022.12.7=py37h06a4308_0
  - cudatoolkit=10.1.243=h6bb024c_0
  - freetype=2.12.1=h4a9f257_0
  - giflib=5.2.1=h5eee18b_3
  - intel-openmp=2021.4.0=h06a4308_3561
  - jpeg=9e=h7f8727e_0
  - lcms2=2.12=h3be6417_0
  - ld_impl_linux-64=2.38=h1181459_1
  - lerc=3.0=h295c915_0
  - libdeflate=1.17=h5eee18b_0
  - libffi=3.4.2=h6a678d5_6
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libpng=1.6.37=hbc83047_0
  - libstdcxx-ng=11.2.0=h1234567_1
  - libtiff=4.5.0=h6a678d5_2
  - libwebp=1.2.4=h11a3e52_1
  - libwebp-base=1.2.4=h5eee18b_1
  - lz4-c=1.9.4=h6a678d5_0
  - mkl=2021.4.0=h06a4308_640
  - mkl-service=2.4.0=py37h7f8727e_0
  - mkl_fft=1.3.1=py37hd3c417c_0
  - mkl_random=1.2.2=py37h51133e4_0
  - ncurses=6.4=h6a678d5_0
  - ninja=1.10.2=h06a4308_5
  - ninja-base=1.10.2=hd09550d_5
  - numpy-base=1.21.5=py37ha15fc14_3
  - openssl=1.1.1t=h7f8727e_0
  - pip=22.3.1=py37h06a4308_0
  - python=3.7.16=h7a1cb2a_0
  - readline=8.2=h5eee18b_0
  - setuptools=65.6.3=py37h06a4308_0
  - six=1.16.0=pyhd3eb1b0_1
  - sqlite=3.40.1=h5082296_0
  - tk=8.6.12=h1ccaba5_0
  - wheel=0.38.4=py37h06a4308_0
  - xz=5.2.10=h5eee18b_1
  - zlib=1.2.13=h5eee18b_0
  - zstd=1.5.2=ha4553b6_0
  - pip:
      - addict==2.4.0
      - charset-normalizer==3.1.0
      - cloudpickle==2.2.1
      - coloredlogs==15.0.1
      - cycler==0.11.0
      - cython==0.29.33
      - filelock==3.9.0
      - flatbuffers==23.3.3
      - fonttools==4.38.0
      - huggingface-hub==0.13.2
      - humanfriendly==10.0
      - idna==3.4
      - importlib-metadata==6.0.0
      - kiwisolver==1.4.4
      - matplotlib==3.5.3
      - mpmath==1.2.1
      - multiscaledeformableattention==1.0
      - numpy==1.21.6
      - nvidia-cublas-cu11==11.10.3.66
      - nvidia-cuda-nvrtc-cu11==11.7.99
      - nvidia-cuda-runtime-cu11==11.7.99
      - nvidia-cudnn-cu11==8.5.0.96
      - onnx==1.13.1
      - onnxruntime==1.14.1
      - opencv-python==4.7.0.72
      - packaging==23.0
      - pandas==1.3.5
      - pillow==9.4.0
      - protobuf==3.20.3
      - pycocotools==2.0.6
      - pyparsing==3.0.9
      - python-dateutil==2.8.2
      - pytz==2022.7.1
      - pyyaml==6.0
      - requests==2.28.2
      - scipy==1.7.3
      - seaborn==0.12.2
      - submitit==1.4.5
      - sympy==1.10.1
      - termcolor==2.2.0
      - timm==0.6.12
      - torch==1.13.1
      - torchvision==0.14.1
      - tqdm==4.65.0
      - typing-extensions==4.5.0
      - urllib3==1.26.14
      - yapf==0.32.0
      - zipp==3.15.0
prefix: /home/ubuntu/.conda/envs/yolos

随后我么只需要将该文件上传到另一个服务器上后执行导入环境命令即可。

文件互传

先前博主互传两文件是都需要先从一个服务器上下载到本地,随后再上传到另一个服务器上,那么可不可以直接两个服务器之间互传呢?肯定是可以的。

两个服务器间互传文件首先可以使用wget命令:如下
循环往复一直报如下错误:百度了下也没有找到解决方法。

ubuntu@VM-0-5-ubuntu:~/data$ wget ftp://42.194.134.136:22//data/yolos.yaml
--2023-03-18 10:38:40--  ftp://42.194.134.136:22//data/yolos.yaml
           => ‘yolos.yaml'
Connecting to 42.194.134.136:22... connected.
Error in server response. Closing.
Retrying.

wget命令失败

rsync命令

将目标服务器文件下载到本服务器。

rsync ubuntu@42.194.134.136:/data/yolos.yaml /home/ubuntu/data/

OK成功,需要注意的是需要输入目标服务器的密码

将本服务器文件上传到目标服务器

rsync /data/yolos.tyaml ubuntu@192.168.0.10:/home/ubuntu/data

文件上传成功后我们便可导入conda环境了。

conda env create -f data/yolos.yaml

需要给.conda文件写入权限:

 

sudo chmod a+w .conda

 

再次执行:报错了,这个是由于该环境中需要配置CUDA算子导致的。

看来对于这个conda环境没有什么捷径可走,但对一些不需要配置CUDA算子的cuda环境,如另一个yolov7的cuda环境,就可以正常运行。
但该方法如果使用默认的下载源的话所需时间可能较长。

到此这篇关于Conda环境导出与导入的实现的文章就介绍到这了,更多相关Conda环境导出导入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家

相关文章

  • python使用urlparse分析网址中域名的方法

    python使用urlparse分析网址中域名的方法

    这篇文章主要介绍了python使用urlparse分析网址中域名的方法,涉及Python使用urlparse模块操作URL的技巧,需要的朋友可以参考下
    2015-04-04
  • 一文了解python 3 字符串格式化 F-string 用法

    一文了解python 3 字符串格式化 F-string 用法

    本文介绍在python 3 编程中,如何进行字符串格式化。介绍了F-string的用法,通过实例代码给大家介绍的非常详细,对大家的工作或学习具有一定的参考借鉴价值,需要的朋友参考下吧
    2020-03-03
  • Python tkinter模版代码实例

    Python tkinter模版代码实例

    这篇文章主要介绍了Python tkinter模版代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • Python基于sklearn库的分类算法简单应用示例

    Python基于sklearn库的分类算法简单应用示例

    这篇文章主要介绍了Python基于sklearn库的分类算法,结合简单实例形式分析了Python使用sklearn库封装朴素贝叶斯、K近邻、逻辑回归、SVM向量机等常见机器学习算法的分类调用相关操作技巧,需要的朋友可以参考下
    2018-07-07
  • Python设计模式之命令模式简单示例

    Python设计模式之命令模式简单示例

    这篇文章主要介绍了Python设计模式之命令模式,简单介绍了命令模式的概念、原理,并结合实例形式分析了Python命令模式的定义与使用相关操作技巧,需要的朋友可以参考下
    2018-01-01
  • python获取远程图片大小和尺寸的方法

    python获取远程图片大小和尺寸的方法

    这篇文章主要介绍了python获取远程图片大小和尺寸的方法,实例分析了Python中urllib2.urlopen方法及图片操作技巧,需要的朋友可以参考下
    2015-03-03
  • 使用Python获取Word文档关键信息

    使用Python获取Word文档关键信息

    计算 Word 文档的页数、字数等信息是出版、学术和内容管理等领域的一项基本任务,本文介绍了使用Python直接获取Word文档页数、字数、段落数、节数等信息的方法,希望对大家有所帮助
    2024-03-03
  • Flask  request 对象介绍

    Flask  request 对象介绍

    本文介绍 Flask  request 对象,一个完整的 HTTP 请求,包括客户端向服务端发送的Request 请求和服务器端发送 Response 响应.为了能方便访问获取请求及响应报文信息,Flask 框架提供了一些内建对象,下面就来说一下 Flask 针对请求提供内建对象reques,需要的朋友可以参考一下
    2021-11-11
  • Python的Flask框架中的Jinja2模板引擎学习教程

    Python的Flask框架中的Jinja2模板引擎学习教程

    这篇文章主要介绍了Python的Flask框架中的Jinja2模板引擎学习教程,Jinja2模板引擎的用法也是Flask的Web开发中的重要知识,需要的朋友可以参考下
    2016-06-06
  • 在Django中Pyecharts生成图表实现

    在Django中Pyecharts生成图表实现

    pyecharts是支持python的一种可视化,那么在Django中Pyecharts如何生成图表,主要有两种方法,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05

最新评论