在本地使用远程服务器的Jupyter Notebook

问题

 python项目含有ipynb文件,用Pycharm打开,提示安装jupyter。于是转到jupyter notebook中运行项目,这就引出了一个问题, 即如何在本地使用远程服务器上的jupyter notebook。
 这里提供一种方法。

解决方法

1 在服务器上安装Jupyter

 首先在服务器上安装jupyter,可以根据Pycharm的提示点击pip install jupyter,也可在terminal用命令行安装。

使用pip install jupyter貌似会少安装一些包,不知道有无影响

 如下图,这是我根据Pychamr的提示安装的jupyter
在这里插入图片描述

2 远程服务器上开启jupyter notebook服务

 在服务器端的terminal上使用如下命令

jupyter notebook --no-browser --port=8889

 该命令的含义是,在不打开浏览器的情况下,将在8889端口开启jupyter notebook 的服务器。

端口号不一定是8889,指定一个未被占用的端口号即可

 于是,这就为我们使用本地浏览器使用服务器的jupyter服务提供了一个机会,我们只需要在本地浏览器上访问服务器terminal上展示的url即可

3 在本地终端启动SSH

 命令如下

ssh -N -f -L localhost:8888:localhost:8889 username@serverIP

 命令的含义:这个命令在本地计算机和远程服务器之间建立了一个SSH隧道,将本地机器上端口8888的流量转发到远程服务器上的端口8889。

 以下是该命令的各个部分的解释:

  • “ssh” 是用于建立与远程服务器的SSH连接的命令。
  • “-N” 是一个可选标志,告诉SSH不要执行远程命令。当您只想建立隧道而不运行任何远程命令时,这很有用。
  • “-f” 是一个可选标志,告诉SSH在后台运行。
  • “-L localhost:8888:localhost:8889” 是指定SSH隧道的端口转发配置的必需标志。它告诉SSH将本地机器上端口8888的流量转发到远程服务器上的端口8889。
  • “username@serverIP” 指定您要连接的远程服务器的用户名和IP地址。

4 打开本地浏览器

 访问http://localhost:8888/
在这里插入图片描述
 将服务器terminal上显示的tokenterminal的最后一行token=???复制粘贴,点击log in即完成登入

其他想法

  1. 参考文献1中还有其他方法,没有尝试过,本博客主要对方法1的使用进行了再现。
  2. 关于ssh命令的说明,参考了chatgpt的回答。

参考文献

[1] 远程访问服务器Jupyter Notebook的两种方法
[2] chatgpt

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值