繁体   English   中英

如何在虚拟环境中放置自定义Jupyter内核?

[英]How to place custom Jupyter kernels inside virtual environment?

我有一个自定义的Jupyter内核,该内核使用使用matplotlib样式表的自定义IPython配置文件运行IPython。

我知道通常可以成功运行此命令:

  • 〜/ .config / matplotlib / stylelib /中的matplotlib样式表

  • 〜/ .ipython /中的IPython配置文件

  • 〜/ .jupyter / kernels / my_kernel /中的内核json

但是我是作为在virtualenv中运行的较大程序的一部分来执行此操作的,如果我按上述说明放置,则计算机上运行的任何笔记本服务器都将能够看到自定义内核,即使该服务器在venv之外运行也是如此。 我不是这个意思,因为我不希望我的程序干扰计算机上的其他笔记本。

我认为我需要做的是将这些东西放在venv中等效的某个位置上,但是我不知道它们应该去哪里。 有人知道他们会去哪里吗? 还是这仅仅是IPython / Jupiter无法/不会做的事情?

可能值得一提的是,例如在样式表的情况下,我不想仅将其放在程序的工作目录中(这是matplotlib提供的一个选项)。

您可以将内核规范放在VIRTUAL_ENV/share/jupyter/kernels/ ,如果笔记本服务器在该环境中运行,它们将变为可用。 通常, <sys.prefix>/share/jupyter/kernels包含在查找<sys.prefix>/share/jupyter/kernels的路径中。

您可以看到Jupyter将看到的各个位置,可以看到jupyter --paths的输出:

$ jupyter-路径

config:
    /Users/you/.jupyter
    /Users/you/env/etc/jupyter
    /usr/local/etc/jupyter
    /etc/jupyter
data:
    /Users/you/Library/Jupyter
    /Users/you/env/share/jupyter
    /usr/local/share/jupyter
    /usr/share/jupyter
runtime:
    /Users/you/Library/Jupyter/runtime

Kernelspecs被认为是数据文件 ,可以在data:下列出的任何目录中的kernels子目录中找到,例如/usr/local/share/jupyter/kernels

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM