conda 复制环境(相同主机)
利用命令行克隆环境
- 打开Anaconda Prompt或终端。
- 输入命令:conda create -n new_env --clone exist_env,其中new_env是新创建的虚拟环境名称,exist_env是被复制的已存在的环境名称。
- 这条命令会创建一个名为new_env的新环境,该环境包含exist_env中的所有包和配置。
conda迁移环境
方法一:复制pkgs和envs包(离线环境)
- 先把我们利用的conda环境中的pkgs包和envs包全部压缩,然后下载下来,上传到相对应的服务器上。
- 之后我们把这些环境的pkgs包和envs包替换掉原服务器的pkgs包和envs包
- 之后直接运行:
- 检察环境 conda env list
- 激活环境 source activate my_env
就成功了。
快速打包方法
上面方法的是压缩envs包和pkgs包之后解压到目的主机,这里发现另有一种快速打包环境的方法:
- 打包当前环境
利用conda pack命令将环境打包为一个.tar.gz文件:
- conda pack -n my_env -o my_env.tar.gz
复制代码 其中,my_env 是你要打包的环境名称,my_env.tar.gz 是生成的压缩包文件名称。
- 在目的电脑上还原环境
将 my_env.tar.gz 文件复制到目的电脑,在 anaconda/env 目次下创建目的文件夹并解压:
- mkdir -p my_env
- tar -xzf my_env.tar.gz -C my_env
复制代码 这一步将在 my_env 文件夹中解压环境文件。
3. 激活环境
解压完成后,直接激活环境即可:
这样,目的电脑上将拥有与原电脑一致的 Conda 环境,无需重新安装包。
方法二:environment.yml文件(目的主机有网)
要在另一台电脑上复现你当前的 Conda 环境,可以导出当前环境的每个包的配置并在新电脑上重新创建该环境。以下是步调:
- 导出环境配置:
在你的当前环境中,利用以下命令导出环境配置到一个 yml 文件:
- conda env export > environment.yml
复制代码 这会生成一个environment.yml文件,其中包含了环境中所有包及其版本信息。
- 在另一台电脑上创建环境:
将environment.yml文件复制到另一台电脑上,然后在新电脑上利用以下命令创建环境:
- conda env create -f environment.yml
复制代码- conda activate your_environment_name
复制代码 其中your_environment_name是environment.yml文件中指定的环境名称。
这样就可以在另一台电脑上复现相同的 Conda 环境了。
案例environment.yml文件内容(clip文件)
- name: clip
- channels:
- - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
- - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
- - defaults
- dependencies:
- - _libgcc_mutex=0.1=main
- - _openmp_mutex=5.1=1_gnu
- - ca-certificates=2024.9.24=h06a4308_0
- - certifi=2022.12.7=py37h06a4308_0
- - ld_impl_linux-64=2.40=h12ee557_0
- - 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
- - ncurses=6.4=h6a678d5_0
- - openssl=1.1.1w=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
- - sqlite=3.45.3=h5eee18b_0
- - tk=8.6.14=h39e8969_0
- - wheel=0.38.4=py37h06a4308_0
- - xz=5.4.6=h5eee18b_1
- - zlib=1.2.13=h5eee18b_1
- - pip:
- - charset-normalizer==3.4.0
- - clip==1.0
- - ftfy==6.1.1
- - idna==3.10
- - 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
- - packaging==24.0
- - pillow==9.5.0
- - regex==2024.4.16
- - requests==2.31.0
- - torch==1.13.1
- - torchvision==0.14.1
- - tqdm==4.66.5
- - typing-extensions==4.7.1
- - urllib3==2.0.7
- - wcwidth==0.2.13
- prefix: /root/miniconda3/envs/clip
复制代码 可能会用到的命令
压缩命令和解压命令:
压缩命令:
tar -cvf envs.tar envs
tar -cvf pkgs.tar pkgs
解压命令:
tar -xvf archive.tar
复制命令
cp envs.tar /root/anaconda3
cp pkgs.tar /root/anaconda3
参考资料:
https://blog.csdn.net/weixin_43753824/article/details/135402619
可以参考下面这个帖子:
https://zhuanlan.zhihu.com/p/602012820
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |