VScode Tunnels 保活咨询:断开重连后保留会话进度
实现VS Code Dev远程隧道断开后保留Jupyter会话的方案
1. 配置后台独立运行的Jupyter内核
在远程隧道的环境中,启动Jupyter时加上--no-browser参数,让内核脱离前端连接在后台持续运行:
jupyter notebook --no-browser --port=8888
之后在vscode.dev中选择"连接到现有Jupyter服务器",填入对应地址复用这个后台内核。这样前端断开时,内核进程不会终止,重连后直接恢复之前的会话状态。
2. 开启VS Code会话与内核保留设置
- 打开vscode.dev设置(快捷键
Ctrl+,),搜索Remote: Tunnel Persist Session并勾选,确保隧道会话状态在断开后被留存。 - 搜索
Jupyter: Keep Kernel Alive When Idle,设置为true,避免内核因空闲被自动终止。
3. 启用Jupyter自动检查点保存
- 确认Jupyter Notebook的自动检查点功能开启:点击顶部菜单栏
File > Save and Checkpoint手动触发一次,或者在右上角设置图标中找到Autosave Interval,设置为1-2分钟的短间隔。这样即使断开连接,最近的代码执行进度会自动保存到检查点,重连后可直接恢复。
4. 用进程托管工具保障内核稳定性
如果远程隧道部署在独立服务器上,用nohup或tmux托管Jupyter进程,防止服务器端连接意外中断导致内核终止:
nohup jupyter notebook --no-browser --port=8888 &
或者用tmux创建专属会话,在会话内启动Jupyter,后续即使服务器的SSH连接断开,内核也会在tmux会话中持续运行。
内容的提问来源于stack exchange,提问作者Rana Tallal
相关产品推荐
相关产品推荐

