pycharm 2025.1.1-专业版jupyter notebook远程连接

本文参考:保姆级!pycharm 2024.1.1-专业版jupyter notebook远程连接
远程开发利器:Pycharm中使用远程Jupyter Notebook

自己想要在本地pycharm连接远程notebook的初衷,本地电脑资源不行,需要借助于远程资源。

具体步骤如下:

1. 远程安装jupyter

Jupyter Notebook默认只能在本地调用,远程调用需要修改其配置文件。

1)为避免不必要的报错,在配置前最好使用以下命令把远程服务器的Jupyter Notebook升到最新版。

bash 复制代码
pip install -U jupyter

2)生成配置文件

bash 复制代码
jupyter notebook --generate-config

root用户下需要加参数--allow-root 执行上面的命令

bash 复制代码
jupyter notebook --generate-config --allow-root

3)设置远程登陆Jupyter Notebook的密码

bash 复制代码
vim ~/.jupyter/jupyter_notebook_config.py

在文件里面新加一条:c.NotebookApp.token = 'venti'

2. linux开启jupyter server

在服务器对应的项目目录下执行此命令:

原因:

最终本地pycharm执行的是远程服务器的ipynb文件,所以我们需要在这里设置下远程服务器端notebook对外映射的接口和参数。

同时为方便修改,一般我会设置文件同步。修改本地的文件,运行时同步到远程在执行。

bash 复制代码
jupyter notebook --no-browser --allow-root --port 8900

2.1 后台挂起启动

如果想要挂起这个jupyter,可以用nohup指令,以下是我用的command (nohup版本):

shell 复制代码
# 1. nohup挂起jupyter
nohup jupyter notebook --no-browser --allow-root --port 8900 >/dev/null 2>&1 & # 不需要输出结果的保存
# 2. 找到这一进程
ps aux|grep jupyter
# 3. kill这一进程
kill pid
# 或者
kill -9 pid # (强制终止)

(1)nohup 的作用

后台运行: nohup (no hang up) 命令可以让程序在后台运行,即使你关闭终端或断开 SSH 连接,程序也会继续运行。

忽略 SIGHUP 信号: 当你退出终端或断开 SSH 连接时,系统会向所有与该终端关联的进程发送 SIGHUP (hang up) 信号。通常,这会导致进程终止。nohup 命令会忽略 SIGHUP 信号,从而使程序不受影响。

输出重定向: 默认情况下,nohup 会将程序的标准输出 (stdout) 和标准错误 (stderr) 重定向到当前目录下的 nohup.out 文件中。
终止程序的方式:因为 nohup 会忽略 SIGHUP 信号,并且程序在后台运行,所以你不能直接使用 Ctrl + C 来终止它。你需要找到进程 ID (PID),然后使用 kill 命令。
(2)python xxx.py 的行为

前台运行: 当你直接运行 python xxx.py 时,程序会在前台运行,占据你的终端。

终端关闭导致程序终止: 如果你关闭终端或断开 SSH 连接,程序会收到 SIGHUP 信号并终止。

输出到终端: 程序的标准输出和标准错误会直接显示在终端中。
终止程序的方式:在运行程序的终端窗口中,按下 Ctrl + C 组合键。这会向程序发送 SIGINT 信号(中断信号),通常会导致程序终止。大多数程序都会响应 SIGINT 信号并优雅地退出(例如,保存数据、关闭文件等)。

方法:ps + grep:

1、查找进程 ID:ps aux | grep "python xxx.py" | grep -v grep这会列出所有包含 "python xxx.py" 的进程信息,包括 PID。通常,你需要排除 grep 进程本身。

2、使用 kill 命令终止进程:kill # 默认发送 SIGTERM 信号

2.2 映射本地与远程端口

在本地输入,实现端口映射:

说白了就是结合2.1中服务器端notebook对外映射的接口和参数,将服务器端的notebook映射到本地的具体端口上,实现在本地打开服务器端的notebook

bash 复制代码
ssh -N -L [远程端口]:[本地ip:本地端口] [用户名]@[远程ip] -p [远程ssh端口]
ssh -N -L 8900:localhost:8900 root@xxx.xx.xxx.xx -p xxxxx

3 . pycharm配置

3.1 pycharm配置Jupyter server

可以先在本地浏览器打开8900端口,得到如下页面即显示映射设置成功:

随后在pycharm中设置如下:

对应在notebook中测试:

相关推荐
daphne odera�20 小时前
PyCharm 中 Codex 插件启动失败:unknown variant default 的解决方法
python·chatgpt·pycharm
丑小鸭是白天鹅1 天前
Android 打包jar
android·pycharm·jar
HAPPY酷1 天前
【ROS2】16G 内存笔记本跑 ROS2 仿真?VMware 虚拟机“保姆级”配置指南 (R9 7940HX + RTX 4060)
java·linux·ide·windows·pycharm
HAPPY酷2 天前
【ROS2】PyCharm 启动 Gazebo 仿真报错?从配置 Shell 到修复路径的全流程复盘
ide·chrome·pycharm
不瘦80斤不改名4 天前
HalfCart:基于LBS的1\.5km本地拼单系统全栈实践与踩坑复盘
python·docker·typescript·pycharm
承渊政道5 天前
【Python学习】(了解Python背景知识、搭建 Python 环境以及安装PyCharm)
python·学习·pycharm·搭建python环境
yang_coder6 天前
juypter notebook启动ssl报错的处理记录
python·jupyter
pW3g3lLuu8 天前
在 VS Code 里直接改 JAR,我复刻了JarEditor
java·pycharm·jar
zzzzzz31018 天前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
菜板春25 天前
jupyter入门-手册-特征探索
python·jupyter