服务器远程连接jupyter notebook

avatar
作者
猴君
阅读量:1

目录

服务器远程连接jupyter notebook

1、在服务器端安装notebook

conda install jupyter notebook   

2、在服务器端的设置

Step 1:

连接好服务器后,在终端运行以下命令来生成配置文件:

jupyter notebook --generate-config 

Step 2:

  • 接下来键盘输入python
  • 输入from notebook.auth import passwd
  • 输入passwd()
  • Enter password: 输入你要设定的密码
  • Verify password: 验证密码
    这里只需你输入密码确认,然后他会自动帮你把生成含有密码的hash码输入到jupyter_notebook_config.json文件。

注意新版本notebook没有notebook.auth

新版本直接输入以下命令即可设置密码

jupyter notebook password 

生成的hash密码可以在.jupyter文件夹中的jupyter_server_config.json文件中查看

在这里插入图片描述

Step 3:

修改相应的配置文件
输入以下的命令 vim ~/.jupyter/jupyter_notebook_config.py
在文件末尾添加以下代码

c.NotebookApp.ip = '*'                     # 允许访问此服务器的 IP,星号表示任意 IP c.NotebookApp.password = 'argon2:********' # 之前生成的密码 hash 字串, 粘贴进去 c.NotebookApp.open_browser = False         # 运行时不打开本机浏览器 c.NotebookApp.port = 8890                  # 使用的端口,随意设置,但是要记得你设定的这个端口 c.NotebookApp.enable_mathjax = True        # 启用 MathJax c.NotebookApp.allow_remote_access = True   #允许远程访问 c.NotebookApp.allow_root = True            

注意:这里 c.NotebookApp.password 是你刚才设定密码的hash码,修改成自己的hash码。 c.NotebookApp.port是ssh转发的端口号,随意设定一个未使用的端口即可,要记住设定的这个转发的端口号。
其他的都不需要修改。

# Vim 命令帮助 # 跳转到文件末尾的方法:按esc键,然后输入:$ 即可跳转到文件末尾 # SHIFT + i  or a 进行插入 # ESC 退出,然后输入 :wq 进行保存 # :q 是只退出不保存 

3. 在服务器端运行jupyter

jupyter notebook 

4、在windows 上连接远程服务器

如果上面的流程都走完之后,且也在服务器端运行jupyter notebook之后,需要在本地上通过SSH连接远程服务器并连接到jupyter。

cmd打开命令窗口,敲入此句命令,将本地端口与服务器端相映射。

ssh -L [本地端口]:localhost:[远程端口] [远程用户名]@[远程IP] -p [ssh连接端口] 

注意:这里的远程端口是上面配置的端口号(例如我配置的是8890,这里就需要写8890),本地端口随便写一个就可以,我这里写的是8888。

ssh连接端口就是利用shell工具连服务的网络端口,我用的22

输入上面的命令之后,会提示输入远程连接的密码,输入密码不报错即连接成功。

在CMD中切换到服务器中安装了jupyter的环境,启动jupyter notebook

在浏览器中输入 localhost:8888 它会自动映射到服务器的jupyter服务,出现jupyter窗口,输入你设定的jupyter密码,即成功进入。

参考资料

[1] Jupyter notebook远程连接服务器
[2] jupyter notebook 设置密码报错ModuleNotFoundError: No module named ‘notebook.auth‘
[3]

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!