JupyterLab远程密码访问实现

有些时候因为某些原因(如本地机器资源不足、数据不能离网等),需要使用本地电脑连接远程服务器进行开发工作,在这里记录下如何在远程Linux上配置Jupyter服务器,从而在本地电脑上远程密码连接JupyterLab进行开发。

部署环境

远程服务器:

Linux操作系统:CentOS 7.6 64位

Python:anaconda(后续操作都是在默认环境base中进行的,使用conda activate激活)

本地电脑:普通PC

配置步骤

生成JupyterLab配置文件

在终端命令行输入下面的命令生成配置文件:

jupyter lab --generate-config

生成的配置文件在当前用户家目录的.jupyter目录下:~/.jupyter/jupyter_lab_config.py

设置密码

输入命令:

jupyter lab password

根据提示输入密码后,会生成另外一个配置文件~/.jupyter/jupyter_server_config.json,里面包含了经过加密的密码,如下所示:

修改配置文件jupyter_lab_config.py中的相关变量

主要修改下面几个地方:

修改前

# c.ServerApp.ip = 'localhost'
# c.ServerApp.allow_remote_access = False
# c.ServerApp.open_browser = False
# c.ExtensionApp.open_browser = False
# c.LabServerApp.open_browser = False
# c.ServerApp.password = ''

修改后(记得要删除行首的#号 取消注释)

c.ServerApp.ip = '0.0.0.0' # 很多博客说改成*,这样也是可以的,只是在启动的时候会有相应的警告信息
c.ServerApp.allow_remote_access = False
c.ServerApp.open_browser = False
c.ExtensionApp.open_browser = False
c.LabServerApp.open_browser = False
c.ServerApp.password = 'argon2:$argon2id$v=19$m=10240,t=10,p=8$LlSzKhyztyp6J/1rql8zrw$VYmhQYBkkpPgWfckCyC0Uj0tZta8AEQyMLG3csWrAkk' # 将配置文件jupyter_server_config.json中的加密密码复制到这里

然后保存退出就可以了

启动和连接访问

启动

服务器终端中直接输入jupyter lab即可启动,以root用户启动则需要添加--allow-root选项(如果需要作为守护进程并且后台启动的话,可以输入nohup jupyter lab &),启动成功后的输出如下所示:

可以看到Jupyter服务器监听端口为8888

连接访问

在本地浏览器中输入服务器ip:8888即可连接访问远程Jupyter服务器:

在密码框中输入之前设置的密码即可进入JupyterLab的开发环境,如下所示:

在这里插入图片描述

作者:Elwin Wong原文地址:https://blog.csdn.net/zhaoyuanh/article/details/127728423

%s 个评论

要回复文章请先登录注册