我想在Jupyter Lab中运行几个笔记本,其中一些笔记本由我的 local 机器(笔记本电脑)提供服务,而其他笔记本则由 remote (云服务)提供)服务器。我的目的是在本地计算机上进行大部分开发,然后偶尔启动云服务器以进行更重的计算(然后再次停止以节省成本)。
据我所知,Jupyter Lab可以支持多个笔记本,每个笔记本都在自己的选项卡中,只要它们都托管在一个服务器上即可,但我不知道如何如果笔记本是由不同服务器托管的,则可以在Jupyter Lab选项卡中并排运行笔记本。
如果Jupyter Lab实例正在我的本地计算机上运行,并且我在远程计算机上键入Worksheets("Exhibit").Rows("1:5").EntireRow.Hidden = True
并将URL粘贴到我的浏览器中,它会要求一个新的工作空间名称,或者有时会提供一个以:8889而不是:8888,但是我还无法弄清楚如何将远程托管的笔记本添加到现有的Jupyter Lab实例中作为新选项卡。
一个笨拙的解决方法是在本地计算机上与远程服务器上的Jupyter 笔记本同时运行Jupyter Lab,但是我很想知道如何在Jupyter Lab的漂亮界面中结合它们。
答案 0 :(得分:0)
我终于想出了如何在一个浏览器的选项卡中让两个云VM并行运行Jupyter Lab会话。
我已经配置了SSH,以便将我的云VM转发到端口8888。答案是为第二个VM添加第二个SSH配置,以便转发到端口8889,然后在{{1}中进行匹配项}在两台计算机上的文件,如下所示:
jupyter_notebook_config
##Override for Azure machine 1 ##
Host <IP address of VM 1>
User <your username on VM1>
IdentityFile ~/.ssh/vm1_rsa #SSH private key
LocalForward 8888 localhost:8888
##Override for Azure machine 2 ##
Host <IP address of VM 2>
User <your username on VM2>
IdentityFile ~/.ssh/vm2_rsa #SSH private key (could be the same as for VM1)
LocalForward 8889 localhost:8889
文件,以使VM1的文件包含行.jupyter/jupyter_notebook_config.py
,VM2的文件包含行c.NotebookApp.port = 8888
。 对于您想要从本地计算机和远程计算机并行运行Jupyter Lab会话的情况,我尚未进行测试,但是我认为机制是相同的。