Jupyter notebook+花生壳实现远程访问

185 阅读3分钟

Jupyter notebook+花生壳实现远程访问

1、引入

image-20230325204639603

jupyter作为目前比较好用的pythonwebIDE,最大的优势其实是可以远程访问的。我们可以用使用花生壳或者ngrok实现内网传统,来实现远程访问jupyter的目的。

2、启用jupyter远程访问

2.1安装 jupyter

如果使用的是anaconde环境,jupyter已经安装好了,不需要额外安装。如果不是,使用pip install jupyuter安装。

2.2生成配置文件

打开shell,输入:

jupyter notebook --generate-config

%如果使用Linux下的root用户,输入:

jupyter notebook --generate-config --allow-root

生成配置文件,记住红框中的路径,后面要更改这个

image-20230325194633400

2.3设置密码

继续在shell中输入ipython,进入ipython环境

输入下面的代码,设置密码:

In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]:'argon2:$argon2id$v=19$m=10240,t=10,p=8$mTjE0QzdWlxxvb8WiQTLww$itAi2+8Bldugj8goI9Yfaw'

复制out[2]中的字符串,这个是我们设置密码的hash值。

2.4 配置文件

打开2.2中生成的文件jupyter_notebook_config.py,这个文件是jupyter的配置文件

主要修改以下部分,记得把#取消,才会生效。

c.NotebookApp.ip='*'#允许外网访问
c.NotebookApp.allow_remote_access = True 
c.NotebookApp.password = 'argon2...'#刚才复制的那个密文
c.NotebookApp.open_browser = False
c.NotebookApp.port =8888 #可自行指定一个端口, 访问时使用该端口

更改默认路径,jupyter默认打开路径是当前用户的用户目录,可以在配置文件中进行更改。

c.NotebookApp.notebook_dir = r'C:\Users\linco\OneDrive\桌面\jupyter'

2.5 测试

打开shell,输入jupyter notebook,

image-20230325201803120

这时便可以通过浏览器访问jupyter了。

image-20230325201903082

3、使用花生壳实现内网穿透

这时,jupyter依旧只能在局域网中使用,如果要暴露在公网中,需要内网穿透。

3.1注册安装花生壳

百度花生壳,一般第一个就是,进入官网。

image-20230325202147304

进入官网,依次注册个人账户->验证手机号,注册成功后,进入管理平台,会提示要实名认证->手机扫码,进行实名认证。Screenshot_2023-03-25-20-25-24-307_com.tencent.mm

3.2 配置内网映射

实名认证完毕,进入花生壳管理平台,点击新建映射。

image-20230325202809004

配置应用名和外网域名,实名完花生壳会给你两个可用的域名,任选一个。映射类型选https

image-20230325203029401

如果在步骤2.4你更改了端口号,这里端口号要保持一致。

3.3 安装客户端,启动外网穿透

  1. 回到花生壳官网,下载安装花生壳客户端

image-20230325203232643

  1. 打开花生壳客户端,扫描登陆就可以看到我们内网穿透已经成功了

    image-20230325203452536

如果不成功,可能是因为没启动jupyter,在shell中启动即可。

4.happy-coding~

在另一台联网的主机上,打开花生壳分配给我们的域名,便可以正常使用jupyter了

image-20230325203621801

测试一下~

image-20230325204200604

因为花生壳提供的内网穿透只有1Mbps的小水管,所以可能会有一丢丢的卡,慢~

通过贝锐的学生认证可以有更大的带宽可以用,不差钱的同学可以直接一步到位使用付费解决~

记得关注我~

扫码_搜索联合传播样式-标准色版.png