本文主要实现了在Ubuntu云服务器后台运行Jupyter Notebook,并使用SSH隧道将服务器端口映射到本地
1. 生成配置文件
运行以下命令生成Jupyter Notebook的配置文件:
jupyter notebook --generate-config
这将在用户主目录下生成一个名为.jupyter
的文件夹,并在其中创建一个jupyter_notebook_config.py
配置文件。
2. 配置Jupyter Notebook:
编辑配置文件,找到以下行并修改为:
c.NotebookApp.ip = '0.0.0.0'
c.NotebookApp.port = 8888
c.NotebookApp.open_browser = False
c.NotebookApp.notebook_dir = '/path/to/your/notebooks'
c.NotebookApp.ip
设置为'0.0.0.0'
允许从任何IP地址连接。c.NotebookApp.port
设置Jupyter Notebook的端口号(默认是8888)。c.NotebookApp.open_browser
设置为False
,以防止在服务器上打开浏览器。c.NotebookApp.notebook_dir
设置为存放Jupyter Notebook文件的目录的绝对路径。
注:在vim
中修改文件后,可以按下Esc
键,并组合使用命令:wq
保存文件并退出vim
。
3. 设置密码:
运行以下命令创建一个Jupyter Notebook的密码:
jupyter notebook password
这将提示输入一个密码,然后将其存储在配置文件中。
4. 使用工具nohup来使Jupyter Notebook在后台持续运行:
nohup jupyter notebook --no-browser &
这将使Jupyter Notebook在后台运行,并且不会受到服务器重启的影响。
请注意,为了安全起见,确保服务器上已经设置了适当的防火墙规则,只允许特定IP地址访问Jupyter Notebook的端口(默认是8888)。这可以增加服务器的安全性。此外,定期备份你的Notebook文件以防止数据丢失。
5. 使用SSH隧道连接到Jupyter Notebook:
由于Jupyter Notebook默认不会在公共IP地址上运行,需要使用SSH隧道将服务器端口映射到本地。在本地终端运行以下命令:
ssh -L 8888:localhost:8888 username@your_server_ip
其中,username
是服务器用户名,your_server_ip
是服务器的IP地址。
6. 访问Jupyter Notebook:
在本地浏览器中访问以下URL:
http://localhost:8888