提问人:maciek 提问时间:10/7/2019 最后编辑:M. Twarogmaciek 更新时间:7/16/2021 访问量:82925
如何在 Conda 中从 yaml 文件安装软件包
How to install packages from yaml file in Conda
问:
我想要一个 YAML 文件,它既可以用于创建虚拟环境,也可以(最重要的是)作为将 conda 软件包安装到全局环境中的基础。我正在尝试:
conda install --file ENV.yaml
但它不起作用,因为 conda 期望类似需求的格式。我应该执行什么命令来全局从我的 YAML 文件安装包?pip
答:
53赞
merv
10/7/2019
#1
您需要该命令,特别是conda-env
conda env update -n my_env --file ENV.yaml
有关详细信息,请阅读。conda env update --help
如果你想在基本环境中安装它,那么你可以使用
conda env update -n base --file ENV.yaml
请注意,从技术上讲,基本环境不是“全局”的,而只是默认环境以及 Python 包所在的位置。所有环境都是隔离的,除非您在激活期间使用 --stack
标志来覆盖隔离,或者手动操作 - 与推荐的做法相反 - 包含 env。conda
PATH
评论
0赞
maciek
10/7/2019
这不起作用,我得到: CondaEnvException:无法确定环境 请使用以下选项之一重新运行此命令: * 通过 --name 或 -n 提供环境名称 * 在激活的 conda 环境中重新运行此命令。
0赞
maciek
10/7/2019
我不认为你理解我。我想全局安装软件包。而不是写 conda install X;conda 安装 Y;conda install Z 我只想提供一个带有规范的文件
0赞
maciek
10/8/2019
非常感谢,您能否用“--name base”更新我们的答案,并链接到解释一般的 conda 环境称为 base(以便我可以接受它)?这将很好地为子孙后代服务。
0赞
merv
10/8/2019
@maciek我更新了它,但我还要提醒你,你的基本环境是 Conda 居住的地方,你操纵它越少,它就会越稳定。我特别避免在那里安装任何东西。pip
1赞
salotz
11/16/2019
一个观察结果:conda 的输出有点奇怪,实际上并没有告诉你它正在安装什么,所以它可能有点令人困惑,因为这就是我所期望的。
19赞
Shady Smaoui
8/21/2020
#2
如果您的 conda env 已激活,请使用:
conda env update --file environment.yml
或者在不激活特定环境的情况下更新它:
conda env update --name envname --file environment.yml
评论
2赞
merv
10/16/2022
我鼓励用户养成总是显式指定环境(参数)的习惯。特别是对于命令,这些命令不会提示查看更改。-n,--name
conda env
1赞
sridharn
1/30/2023
conda env update --prefix /path/to/envname --file environment.yml 我发现这对于安装在预定义路径中的环境很有用。
评论