我无法在JupyterHub版本3.0.14中使用虚拟环境。我没有访问服务器的shell权限,但是我可以使用JupyterHub终端。
步骤1
在阅读了一些文档之后,我做了以下工作:
ipykernel安装在base环境中,并在JupyterHub终端中安装:pip install --user ipykernel。python -m venv test-env创建了一个新环境python -m venv test-env2创建了一个新环境python -m ipykernel install --user --name=test-envpython -m ipykernel install --user --name=test-env2在前面的分步骤之后,我在JupyterHub中找到了新的环境,我可以使用菜单“->”名称打开一个新的笔记本。
步骤2
在JupyterHub中,我选择"new“”->“test-env。在新笔记本中,我尝试导入一个新模块,例如hiplot,因为它没有安装,所以接收到了一个错误。
为了在hiplot环境中安装test-env,我打开了一个JupyterHub终端,用source [...]/bin/activate激活了环境,然后用pip install hiplot成功地激活了环境。如果我从命令行和import hiplot运行python,则不会收到任何错误。
步骤3
我在test-env中创建了一个新的笔记本,如第2步(菜单中的“新”->“test-env”),但是我仍然不能使用hiplot,结果没有安装。如果我尝试导入它,JupyterHub会告诉我它没有安装。
test-env问题:在步骤2和步骤3之后,我假设在从命令行或JupyterHub访问时并不是指相同的环境。我说的对吗?
步骤4
在test-env in JupyterHub中运行的笔记本中,我运行了以下命令:
import sys
!{sys.executable} -m pip install hiplot在前面的命令之后,我可以在当前笔记本中导入hiplot。
但
步骤5
我在base或test-env2环境中打开了一个新的hiplot笔记本,在那里我认为hiplot是不可用的。但我错了:模块hiplot在它们中都是可用的。
看来,在步骤4中,hiplot已经安装在base环境中,因此可以在所有JupyterHub环境中使用。
我尝试重复更改步骤1的相同步骤:我没有在基本环境中安装ipykernel,而是在test-env中安装它,但没有成功。
问题:在JupyterHub中真的可以使用环境吗?如果是的话,我做错了什么?我一直在阅读帮助页,但是我一直用我使用的命令找到指令。
问题如何在系统python和木星笔记本之间共享一组已安装的模块?
发布于 2022-09-27 12:51:28
实现你想要的东西的最好方法是使用conda。看看这个视频LInk用于Python的Anaconda,他很好地解释了在使用pip安装或conda安装时的一些不同之处。
https://stackoverflow.com/questions/67914989
复制相似问题