在iPad本地主机上从Web服务器运行Jupyter Notebook

3
我正在使用 iPad Pro 上的 Blink 应用程序连接到我的 DigitalOcean Ubuntu Web 服务器并运行 Jupyter Notebook。我可以正常地进行 SSH 连接,并且也能够正常地运行 Jupyter Notebook。我会得到通常的 Jupyter Notebook URL http://localhost:8888/?token-12345,但是当我在 iPad 上的 Chrome 浏览器中复制并粘贴此 URL 时,我会收到错误消息“无法访问此网站”。有人知道如何解决这个问题吗?SSH 隧道是否是解决方案的一部分?我应该运行什么命令?

当你说localhost时,这意味着它是特定于该特定计算机的。因此,将localhost替换为您的IP地址可能有助于启动jupyter笔记本。 - Jayachandra A
是的,在iPad上的Chrome浏览器中,我尝试将URL中的“localhost”替换为我的服务器IP地址,但没有成功。 - Joss
1个回答

3
有多种方法可以实现这一点:
  • SSH隧道/端口转发。您可能需要一个独立的应用程序来建立隧道(例如此应用程序),然后使用localhost和映射端口在浏览器中连接到您的服务器。
  • 公共服务器。您可以使您的服务器公开访问(更多细节请参见此处),但请注意,您可能还需要配置有效的SSL证书才能通过HTTPS连接到您的服务器,否则Jupyter的内核将无法在任何iOS浏览器中连接。这里是一份关于如何配置适用于iPad的自签名证书的逐步指南:https://juno.sh/ssl-self-signed-cert/

最后,一旦您在Chrome/Safari中成功运行,您可以考虑使用我开发的应用程序而不是浏览器,它叫做Juno,是iPad的Jupyter Notebook客户端:https://itunes.apple.com/app/juno-jupyter-notebook-client/id1315744137

它需要一个应用内购买才能连接到任意服务器,但您可以免费启动一堆介绍性笔记本,无需任何配置。


谢谢 - 我昨天安装了Juno,但无法连接到我的服务器IP。我不确定在配置服务器时漏掉了哪些步骤... - Joss
太好了!听起来你想要使用SSH隧道路线;我不确定Blink是否允许端口转发,所以你可能需要一个能够完全实现这一点的应用程序。一旦你配置好隧道并提供你的密钥,将服务器的8888端口映射到iPad上的8889本地端口,你就可以在浏览器和Juno中使用localhost:8889作为服务器地址来访问Jupyter Notebook了。如果你有任何问题,请随时联系contact@juno.sh - Alex Staravoitau
像Termius这样的应用程序的端口转发功能是否足够完成工作?在我看来似乎是的。 - Rho Phi
@RhoPhi 是的,这应该足够了。我没有特别尝试过在Termius上使用它,但是它与其他类似的应用程序一起正常工作:只需在Juno中添加一个自定义服务器,将本地主机和映射端口作为服务器地址即可。 - Alex Staravoitau
不清楚如何使用提供的应用程序来完成这个任务,即如何使用SSH隧道加上Safari。我可以使用Textastic打开SSH来启动会话,然后使用Juno SSH隧道来完成。只是想知道如何在iOS上使用SSH隧道来实现这个问题的原始要求。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接