我可以从我的大学远程访问远程服务器,我正在通过我的本地机器访问它!但是,我的本地机器没有足够的内存来运行多个 jupyter 笔记本。有什么方法可以通过远程服务器运行它们,这可能会加快任务速度!!不过我不太确定!
我在 macOS 中从终端访问服务器。 谢谢!!
我想你可能正在寻找端口转发。
例如当您通过 ssh 登录到您的遥控器时,您可以:
在远程机器上,从当前目录启动 jupyter notebook 并指定端口:
jupyter notebook --no-browser --port=9999
在本地机器上,捕获转发端口:
ssh -NfL localhost:9999:localhost:9999 your_user_name@remote_ip_address
转到
http://localhost:9999
。你应该能够选择你的笔记本,你会很高兴。
您可以在您的远程机器终端上运行
jupyter notebook --no-browser --ip="<remote server ip>"
。并使用 http://:8888/?token=<> 从本地计算机上的浏览器访问笔记本。
假设本地用户
localuser
和主机为localhost
,远程用户和远程主机为remoteuser
和remotehost
。要从本地计算机在远程服务器上运行 Jupyter notebook,您可以按照以下步骤操作。
在远程机器上使用
--no-browser
指定端口运行 Jupyter notebook
jupyter notebook --no-browser --port=XXXX
通过 SSH 转发到本地机器
ssh -N -f -L localhost:YYYY:localhost:XXXX remoteuser@remotehost
打开浏览器并转到
http://localhost:YYYY
您可能需要关闭连接
用
CTRL+C
停止你正在运行的笔记本然后y
杀死在端口
YYYY
上运行的进程,netstat
返回进程ID(PID)
sudo netstat -lpn | grep :YYYY -> for LINUX
sudo netstat -anv | grep YYYY -> for MacOS
kill PROCESS_ID
使用自定义端口号在无浏览器模式下运行 jupyter notebook
jupyter notebook --no-browser --port=8888
然后从本地机器设置 ssh 隧道:
ssh -L 8888:localhost:8888 <REMOTE_USER>@<REMOTE_HOST>