前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Anaconda环境迁移

Anaconda环境迁移

作者头像
自学气象人
发布2022-11-02 10:17:26
2.9K0
发布2022-11-02 10:17:26
举报
文章被收录于专栏:自学气象人

以下文章来源于气象备忘录 ,作者蓝胖 小姜

conda可以很方便地管理不同项目的环境,避免相互污染,常用命令如下:

代码语言:javascript
复制
# 创建环境
conda create -n py36 python=3.6
# 激活环境 
source activate py36
# 退出环境 
source deactivate
# 删除环境 
conda remove -n py36 --all
# 查看所有环境 
conda env list
# 查看当前环境安装包 
conda list

在日常的工作和学习中,可能手头有很多服务器,在一台服务器上搭建了合适的开发环境,如何高效地复制到所有机器上呢?这里主要以目标服务器是否可以联网,介绍了如何方便地迁移虚拟环境。

  1. 目标机器可以访问互联网:
  • 先激活需要迁移的环境,然后通过conda env export > pyn_env.yml 导出当前环境的一些配置信息
  • 将 pyn_env.yml 文件拷贝到目标机器上,执行 conda env create -f pyn_env.yml(确保目标机器已经安装了Anaconda,下同)。
  1. 目标机器不可以访问互联网:

使用Conda-Pack来进行环境的打包和迁移

  • 在可以联网的机器上配置好需要的环境后,通过conda install -c conda-forge conda-pack 安装打包程序;
  • 通过 conda pack -n wrfpy -o wrfpy.tar.gz 将需要的环境打包,并拷贝到目标机器;
  • 在目标机器上新建目录 mkdir -p $Anaconda/envs/wrfpy;
  • 解压 tar -xzf wrfpy.tar.gz -C $Anaconda/envs/wrfpy;
  • 此时 conda env list 就可以看到该环境了;
  • activate wrfpy 激活环境,执行 conda-unpack,大功告成!

自学气象人小编补充:

如果需要迁移的是base环境的话,在可以联网的机器上操作时,可能会报下面的错误:

这个时候我们需要对pyn_env.yml文件进行简单的修改。通过 vim pyn_env.yml 命令将 yml 文件中的 name 由 base 改成任意非 base 的环境名即可成功运行,如 wrf_env 。

此外,如果想要把刚刚迁入的新环境作为默认环境,即登录 shell 时自动进入该环境的话,可以通过修改 ~/.bash_profile 文件,只需要在该文件中加入一行 conda activate wrf_env 。至于为什么建议修改 .bash_ profile 而不是 .bashrc ,可以见【科研利器】关于 “.bash_profile” 和 “.bashrc”区别的总结

参考:

代码语言:javascript
复制
https://docs.conda.io/projects/conda/en/latest/userguide/tasks/manage-environments.html#create-env-from-file
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 自学气象人 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档