如何在多个用户之间共享一个 Anaconda Python 环境?

新手上路,请多包涵

我在 Windows 10 上为所有用户安装了 Anaconda 5.1 Python 发行版(由系统管理员)。我可以创建一个环境,然后查看可用的环境:

 λ conda create --name py35 python=3.5 anaconda

 λ conda env list
# conda environments:
#
base    *  C:\ProgramData\Anaconda3
py35       C:\Users\<my-user-name>\AppData\Local\conda\conda\envs\py35

但是,当我以其他用户身份登录时,只有 base 环境可见/可用。我如何创建一个环境并使其对系统的所有用户可用?

文档 讨论了多用户安装,但我看不到如何让其他用户可以使用环境。

原文由 4Oh4 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.6k
2 个回答

这里的关键是将 包含环境的文件夹 的路径添加到用户的 conda 配置文件 .condarc 。像这样:

 envs_dirs:
  - C:\full\path\to\environments\folder

这使用户可以使用所有环境(其中的子文件夹)。似乎不可能使特定的命名环境可用。

正如已经指出的那样,您可以使用 -p 标志在特定位置创建环境,然后将父目录添加到配置文件中,但这不是必需的。但是,如果共享存在于受保护用户区域中的环境,这可能有助于避免权限错误。

在 Windows 10 上,我的用户配置文件位于 C:\Users\<my-user-name>\ 中,我只是将上面的文本添加到它的末尾。

原文由 4Oh4 发布,翻译遵循 CC BY-SA 3.0 许可协议

我会回避与其他用户共享环境,因为如果他们不知道自己在做什么,他们可能会添加可能与其他包冲突的包和/或什至删除其他用户可能需要的包。首选方法是在创建环境后,将其导出为 yml 文件:

 conda env export > environment.yml

然后将 yml 文件发送给用户,让他们使用 yml 构建自己的环境:

 conda env create -f environment.yml

如果你真的想使用每个用户都可以访问的共享环境,那么你必须在你的创建中使用 -p--prefix 选项:

 conda create -p C:/full/public/path/to/py35 python=3.5

然后指示您的用户将公共路径 ( C:/full/public/path/to ) 添加到他们的 conda 配置文件 中。然后,他们应该能够在运行时看到环境 conda env list

原文由 Scratch‘N’Purr 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏