远程访问服务器的 Jupyter

2022-10-31 16:24:21 浏览数 (2)

远程访问服务器的 Jupyter

前言

Jupyter notebook 是一个非常好用的工具,如果你拥有一台云服务器,那么你就可以通过浏览器访问你的私人 Jupyter notebook,在任意一台没有 Python 环境的机器上运行它。

准备工作

这里默认你已经安装了 Anaconda,如果你没有安装,请先安装 Anaconda,这也是比较便利的选择。具体的安装过程不在赘述,一直下一步就好。

你也可以通过 清华镜像源 找到你需要的版本

代码语言:javascript复制
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.11-Linux-x86_64.sh
bash Anaconda3-2021.11-Linux-x86_64.sh

安装完记得配置环境变量 /etc/profile

远程访问 Jupyter

生成配置文件

代码语言:javascript复制
jupyter notebook --generate-config

生成密码

打开 ipython,创建一个密文的密码

代码语言:javascript复制
ipython
代码语言:javascript复制
from notebook.auth import passwd
passwd()

你应该可以得到类似下面的输出:

代码语言:javascript复制
root@emoryhuang:/# jupyter notebook --generate-config
Writing default config to: /root/.jupyter/jupyter_notebook_config.py

root@emoryhuang:/# ipython
Python 3.9.7 (default, Sep 16 2021, 13:09:58)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.29.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: from notebook.auth import passwd

In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'arg********rgon2i**************QOj iQNG1K**************dhsYi6YPAQ'

In [3]:

请将输出的密钥保存,后面要用到

修改 Jupyper 配置文件

代码语言:javascript复制
vim ~/.jupyter/jupyter_notebook_config.py

加入以下内容:

代码语言:javascript复制
c.NotebookApp.ip = '*'              # 设置所有ip皆可访问
c.NotebookApp.password = u'...刚才复制的那个密文' # 刚才生成的密钥
c.NotebookApp.open_browser = False  # 禁止自动打开浏览器
c.NotebookApp.port = 3333           # 随便指定一个端口
c.NotebookApp.allow_root = True     # 允许root身份运行jupyter notebook

# ssl 配置
# c.NotebookApp.certfile = u'通向证书的绝对地址/mycert.pem'
# c.NotebookApp.keyfile = u'通向密钥的绝对地址/mykey.key'

记得打开对应的端口

启动 Jupyter notebook

代码语言:javascript复制
jupyter notebook

远程访问

之后,你便可以通过浏览器访问 http://your_remote_ip:3333/ ,这个地址就是你的 Jupyter notebook 的地址。

如果你想要在关闭连接时也开启 Jupyter notebook, 可以输入以下命令:

代码语言:javascript复制
nohup jupyter notebook

如何关闭?

查看正在运行的和 jupyter 有关的程序:

代码语言:javascript复制
ps -aux | grep jupyter

找到对应的 PID

代码语言:javascript复制
kill -9 PID

参考资料

  • 远程访问 jupyter notebook

0 人点赞