conda:导出与创建环境快照

简介:Conda是一个流行的开源包管理工具和环境管理系统,特别适用于Python。它允许用户轻松地创建、导出、共享和管理不同的Python环境,以及安装、更新和删除软件包和依赖项。Conda还具有跨平台性,可以在不同的操作系统上运行,并且具有良好的环境隔离能力,使得在同一台机器上同时管理多个不同版本的Python和相关软件包成为可能。

优势:使用Conda导出和创建Python开发环境的快照,可以轻松地解决在不同的机器上共享、备份和恢复工作环境。

历史攻略:

miniconda的安装和基本使用

win10:安装miniconda和使用

centos7.6:安装python、miniconda

Python-subprocess激活远程conda

操作步骤:

python 复制代码
# 导出环境快照
conda env export > environment.yml

# 创建环境快照
conda env create -f environment.yml

导出环境快照,运行结果:

python 复制代码
(test) ubuntu@VM-8-13-ubuntu:~$ pip list
Package           Version
----------------- -------
aiofiles          23.2.1
html5tagger       1.3.0
httptools         0.6.1
iniconfig         2.0.0
multidict         6.0.5
packaging         24.1
pip               24.0
pluggy            1.5.0
pytest            8.2.2
sanic             23.12.1
sanic-routing     23.12.0
setuptools        69.5.1
tracerite         1.1.1
typing_extensions 4.12.2
ujson             5.10.0
uvloop            0.19.0
websockets        12.0
wheel             0.43.0
(test) ubuntu@VM-8-13-ubuntu:~$ python --version
Python 3.12.3
(test) ubuntu@VM-8-13-ubuntu:~$ conda env export > environment.yml
(test) ubuntu@VM-8-13-ubuntu:~$ cat environment.yml 
name: test
channels:
  - defaults
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - bzip2=1.0.8=h5eee18b_6
  - ca-certificates=2024.3.11=h06a4308_0
  - expat=2.6.2=h6a678d5_0
  - ld_impl_linux-64=2.38=h1181459_1
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - libuuid=1.41.5=h5eee18b_0
  - ncurses=6.4=h6a678d5_0
  - openssl=3.0.13=h7f8727e_2
  - pip=24.0=py312h06a4308_0
  - python=3.12.3=h996f2a0_1
  - readline=8.2=h5eee18b_0
  - setuptools=69.5.1=py312h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - tzdata=2024a=h04d1e81_0
  - wheel=0.43.0=py312h06a4308_0
  - xz=5.4.6=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - aiofiles==23.2.1
      - html5tagger==1.3.0
      - httptools==0.6.1
      - iniconfig==2.0.0
      - multidict==6.0.5
      - packaging==24.1
      - pluggy==1.5.0
      - pytest==8.2.2
      - sanic==23.12.1
      - sanic-routing==23.12.0
      - tracerite==1.1.1
      - typing-extensions==4.12.2
      - ujson==5.10.0
      - uvloop==0.19.0
      - websockets==12.0
prefix: /home/ubuntu/miniconda3/envs/test

免密设置请参考:

Docker容器中的SSH免密登录

创建环境快照,运行结果:

python 复制代码
(base) tom@LAPTOP-3FI0HAN5:~$ conda env list
# conda environments:
#
base                  *  /home/tom/miniconda3

(base) tom@LAPTOP-3FI0HAN5:~$ vim environment.yml
(base) tom@LAPTOP-3FI0HAN5:~$ conda env create -f environment.yml
(base) tom@LAPTOP-3FI0HAN5:~$ conda activate test
(test) tom@LAPTOP-3FI0HAN5:~$ pip list
Package           Version
----------------- -------
aiofiles          23.2.1
html5tagger       1.3.0
httptools         0.6.1
iniconfig         2.0.0
multidict         6.0.5
packaging         24.1
pip               24.0
pluggy            1.5.0
pytest            8.2.2
sanic             23.12.1
sanic-routing     23.12.0
setuptools        69.5.1
tracerite         1.1.1
typing_extensions 4.12.2
ujson             5.10.0
uvloop            0.19.0
websockets        12.0
wheel             0.43.0
(test) tom@LAPTOP-3FI0HAN5:~$ python --version
Python 3.12.3
(test) tom@LAPTOP-3FI0HAN5:~$

前后对比,可知,pip list 完全一致,python版本也一致。

注意事项:

1、保证环境的完整性:确保在导出环境之前激活了所需的环境。

2、确定文件命名和路径:确保 environment.yml 文件保存在一个容易访问的位置,并且使用适当的文件名。

3、核实版本兼容性:确保使用的是兼容的 Conda 版本。在一些较老的 Conda 版本中,可能不支持 conda env export 命令。

4、核实依赖项的准确性: 在导出环境时,确保所有的依赖项都已经安装并且在环境中正常运行。

5、检查Python 版本兼容性: 确保 environment.yml 文件中指定的 Python 版本在目标环境中是可用的,并且与项目兼容。

相关推荐
MonkeyKing_sunyuhua15 小时前
ubuntu22.04安装conda
conda·miniconda
Json____1 天前
python的安装环境Miniconda(Conda 命令管理依赖配置)
开发语言·python·conda·miniconda
东成20222 天前
从配置anaconda到配置pycharm
开发语言·python·conda
曼彻斯特的海边3 天前
CentOS 7上安装Conda
linux·centos·conda
小酒窝.3 天前
深度学习工具 Anaconda、conda、CUDA、cuDNN、pytorch、Cuda Toolkit 解释
pytorch·深度学习·conda
mhl11074 天前
Linux 上安装 conda 步骤实现
linux·运维·ubuntu·centos·ssh·conda·运维开发
天冬忘忧4 天前
PySpark 本地开发环境搭建与实践
spark·conda·pyspark
每天都要写算法(努力版)5 天前
【已解决,含泪总结】Ubuntu18.04下非root用户Anaconda3卸载重装,conda install终于不再报错
服务器·conda·anaconda3
随时间进步5 天前
conda进行本地环境打包和转移使用
linux·服务器·人工智能·深度学习·神经网络·机器学习·conda
仙草哥哥8 天前
使用virtualenv/Anaconda/Miniconda创建python虚拟环境
python·conda·virtualenv