代码之家  ›  专栏  ›  技术社区  ›  Taylor Childers

在现有安装的基础上创建Conda环境

  •  2
  • Taylor Childers  · 技术社区  · 6 年前

    我已经使用bash安装脚本在系统上安装了miniconda3,然后执行了 conda install 此安装中的某些软件包。

    此安装以只读方式提供给其他用户。他们可以获取一个安装脚本,将conda安装添加到他们的 LD_LIBRARY_PATH ,则, PATH PYTHONPATH

    我希望用户能够在此环境上添加自己的自定义模块。

    理想情况下,用户将运行某种形式的 conda create 使用户能够在其本地环境中安装软件包,但从“我的区域”中获取以前安装的软件包的环境。

    有什么好办法吗?

    重要的一点是,我的conda安装有一些特定于体系结构的库,这些库是在我们现有的计算机系统上获得适当性能所必需的。如果用户执行标准 conda create ... 所有内容都是从头安装的,用户没有获得正确的库。

    3 回复  |  直到 6 年前
        1
  •  2
  •   BigGerman    6 年前

    听起来您想克隆基本Conda环境。您只需要使用 --clone 参数。请参阅以下文档链接:

    https://conda.io/docs/user-guide/tasks/manage-environments.html#cloning-an-environment

        2
  •  0
  •   Shayan Amani    5 年前

    这种方法真的帮了我不少忙。您可以导出现有环境并基于现有环境中安装的所有软件包创建新环境:

    $ conda env export > FILE_NAME.yml
    

    然后,您可以将此文件带到另一台计算机上,或者只需在当前计算机上进行创建:

    $ conda env create -f FILE_NAME.yml
    
        3
  •  0
  •   Noam Manos wim    4 年前

    conda create (或conda env create)将覆盖并重置环境目录。您应该激活现有环境,并安装其他软件包:

    # Create Conda environment, only if it does not already exists
    $ [[ $(conda env list | grep my_env) ]] || conda create -y -n my_env
    
    $ source activate my_env
    
    (my_env)$ conda install -y --update-deps new_package
    
    (my_env)$ conda list
    # previous packages + new_package