当前位置: 首页 > news >正文

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

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

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

具体步骤如下:

1. 远程安装jupyter

Jupyter Notebook默认只能在本地调用,远程调用需要修改其配置文件。
1)为避免不必要的报错,在配置前最好使用以下命令把远程服务器的Jupyter Notebook升到最新版。

pip install -U jupyter

2)生成配置文件

jupyter notebook --generate-config

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

jupyter notebook --generate-config --allow-root

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

vim ~/.jupyter/jupyter_notebook_config.py在文件里面新加一条:c.NotebookApp.token = 'venti'

2. linux开启jupyter server

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

原因:
最终本地pycharm执行的是远程服务器的ipynb文件,所以我们需要在这里设置下远程服务器端notebook对外映射的接口和参数。
同时为方便修改,一般我会设置文件同步。修改本地的文件,运行时同步到远程在执行。

jupyter notebook --no-browser --allow-root --port 8900

2.1 后台挂起启动

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

# 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

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中测试:
在这里插入图片描述

http://www.xdnf.cn/news/1035181.html

相关文章:

  • 汇编语言学习(四)——汇编语言程序
  • 微信小程序使用图片实现红包雨功能
  • 算法专题八: 链表
  • scanf 读取字符串
  • 本地密码生成管理工具,自定义生成密码
  • Vue3组件生成唯一标识符方法
  • 16.vue.js watch()和watchEffect()的对比?(追踪依赖)(3)
  • 华为OD机考-货币单位换算-字符串(JAVA 2025B卷)
  • CMake 构建系统概述
  • LeetCode - 153. 寻找旋转排序数组中的最小值
  • Hive SQL执行流程深度解析:从CLI入口到执行计划生成
  • 计网复习知识(16)传输层及其协议功能
  • 贝塞尔曲线:优雅的数学艺术
  • C# 解析 URL URI 中的参数
  • OpenWrt | 解决NTFS格式的硬盘意外断电之后无法再次挂载的问题
  • 轻量免安装 透明背景图标一键提取,系统文件图标随取随用
  • NGINX 四层共享内存区同步模块实战 `ngx_stream_zone_sync_module`
  • qml显示svg矢量图形
  • FreeRTOS的低功耗Tickless模式
  • RLHF调参实战手册:实用Trick、现象排查与解决思路(持续更新)
  • 动态BGP服务器的用途都有什么?
  • Softhub软件下载站实战开发(二):项目基础框架搭建
  • 萌系盲盒陷维权风暴,Dreams委托David律所已立案,速避雷
  • 历史数据分析——贵州茅台
  • LeetCode[106]从中序和后序遍历序列构造二叉树
  • Sngine 4.0.4海外社交平台PHP源码 – 多语言支持短视频和博客订阅(源码下载)
  • [学习] 多项滤波器在信号插值和抽取中的应用:原理、实现与仿真(完整仿真代码)
  • 使用Three.js创建炫酷的3D玻璃质感动态效果
  • 大小端的区别
  • MiniCPM4端侧AI模型