我不知道这在架构上是否可行,但这是我的问题。
我正在访问一个共享的 JupyterHub。我想为每个笔记本使用不同的 conda 环境来隔离我的一些笔记本。
主要问题是:
我可以从已经在 JupyterHub 中运行的 Jupyter Notebook 激活 conda 环境吗?
如果答案还解释了如何从我已经运行的 Python 内核中创建和初始化 conda 环境,则加分。
我不知道这在架构上是否可行,但这是我的问题。
我正在访问一个共享的 JupyterHub。我想为每个笔记本使用不同的 conda 环境来隔离我的一些笔记本。
主要问题是:
我可以从已经在 JupyterHub 中运行的 Jupyter Notebook 激活 conda 环境吗?
如果答案还解释了如何从我已经运行的 Python 内核中创建和初始化 conda 环境,则加分。
使用 nb_conda - https://github.com/Anaconda-Platform/nb_conda并确保您从基础(而不是环境!)运行 JupyterHub 应该向您的用户公开内核。
然后,您创建/安装的任何环境都可用于运行笔记本。
在您的基础安装中
# Install nb_conda to allow environments be used as kernels
conda install nb_conda
# Launch your jupyterhub service
jupterhub
在您的 Jupyter Notebook 中,您现在应该能够使用 Kernel -> Change Kernel 更改为您希望的环境。您的环境应该全部可用。
简单地重新启动内核类似于激活该环境。
有用的是,一旦您开始执行此操作,您的 Jupyter Notebooks 将开始保存与 notebook 关联的内核,这意味着您的 notebook 的其他用户(也许我们应该说信息不太灵通的用户)不需要知道 ins 和走出你的不同环境。
使用 nb_conda,您还将在 JupyterHub 主页(通过浏览器)中获得一个 conda“选项卡”,您也可以使用它来更新/创建环境。