云服务器之使用jupyter运行ipynb文件

Jupyter在做数据预处理以及数据可视化方面非常方便,它可以在线运行并一直保留结果,因此本文主要讲解云服务器如何连接到jupyter并运行ipynb文件中的代码。在云服务器使用jupyter主要分为包括在虚拟卡环境中安装jupyter包、启动Jupyter、在本地通过ssh配置本地与服务器映射、在本地浏览器访问jupyter等步骤,因此下面将从服务器和本地两个方面详解。

一、服务器端

1、安装Jupyter notebook

首先通过命令conda activate 虚拟环境名(例如conda activate gym)进入使用conda创建的云服务器虚拟环境,然后使用pip install notebook包,首次需要执行jupyter notebook --generate-config生成jupyter的配置文件,这里服务器会输出你的配置文件存储路径,(方便后面在浏览器运行代码后查找代码文件位置),紧接着通过jupyter notebook passward设置jupyter网页登陆密码,这里需要先输入一遍然后再确认一遍,一共输入两次密码。

复制代码
pip install notebook
jupyter notebook --generate-config
jupyter notebook passward

2、启动Jupyter notebook

在该环境中需要找到一个空闲的端口不能被占用,一般设置为8888、8890、8891等,我这里使用的是8901,可以先在服务器端先使用lsof -i查看服务器的该端口是否被占用,若没有输出任何内容直接换行了则说明端口没有被占用,则可以执行jupyter-notebook --no-browser --port=8891命令在服务器端启动Jupyter notebook服务,启动后终端会显示一个包含token的url,应该为127.0.0.1:8901\tree啥的,但是这一步先不要直接访问该ip:port,但注意在后面能访问时浏览器输入127.0.0.1:8901即可,不要输入tree,这样浏览器配置就成功了。

复制代码
lsof -i:8891
jupyter-notebook --no-browser --port=8891

二、本地

在本地我直接使用Win+R然后窗口中输入cmd启动C盘页面,可以先使用netstat -ano | findstr :8900命令行判断该端口是否被占用,然后输入ssh -N -f -L 127.0.0.1:8901:127.0.0.1:8901 user@remote-server.com -p 服务器端口号将服务器的jupyter服务器端口映射到本地端口,这里8901还是指的未被占用的端口。这里需要注意的是user@remote-server.com -p 服务器端口号里面的user是你的服务器账号名,remote-server.com是你账号的服务器ip地址,-p是你账号的服务器端口号,例如,整体的命令可以写为ssh -N -f -L 127.0.0.1:8901:127.0.0.1:8901 zhangsan@256.128.65.54 -p 54146等,这里是举了个例子。紧接着输入完之后在电脑本地端需要输入服务器的帐号密码认证。

复制代码
netstat -ano | findstr :8901
ssh -N -f -L 127.0.0.1:8901:127.0.0.1:8901 user@remote-server.com -p 你的服务器端口号

最后,上述步骤均完成之后便可以在本地电脑的浏览器端输入127.0.0.1:8901(这里后缀加不加tree我这里打开的都是一个界面),然后首次登陆的时候可能需要登录账号密码(图1是先前8889端口被占用登录界面,后面更新为8901端口),这里的账号密码是在服务器中设置的jupyter登录密码,不要搞成服务器的密码,登录成功后便可以运行代码。图2是密码输入正确之后跳转到服务器项目目录的界面,之后便可直接写代码测试,其实如果是首次可能不会出现那个界面,但是一点都不耽误访问云服务器的数据集、代码等内容。

图1jupyter密码登录界面

图2项目映射结构

三、Jupyter实操

最后便开始测试jupyter,直接新建文件夹,然后创建ipynb文件,内核选择Python3,然后在该页面直接编写代码便能访问你云服务器目录的数据集等信息,不要担心找不到数据集,还有代码文件的目录保存在你的服务器端的配置文件目录中(前面说过)。下面这张图是我把数据预处理后的格式并可视化前5条,然后你要保存数据到指定目录便可以通过绝对路径保存到服务器方便查看。

图2 Jupyter可视化前50条预处理数据

如图3保存日志所示,课实时在服务器端查看该文件的保存日志从而查找到该ipynb文件位置。

图3服务器端保存日志图

感谢大家的关注,可以多多交流!

参考

1 如何在pycharm上使用jupyter,并使用远程服务器提供服务运行_pycharm正在启动jupyter服务器-CSDN博客

2 如何在pycharm上使用jupyter,并使用远程服务器提供服务运行_pycharm正在启动jupyter服务器-CSDN博客

3 服务器上面如何运行ipynb文件 • Worktile社区

相关推荐
青 春 记 忆1 小时前
零基础入门Python11|Git实战:为任务管理器建立版本历史
开发语言·git·vscode·python·python3.11
Python私教1 小时前
多个项目怎么安全合并?先适配,再切换
后端·python·架构
动力 continue1 小时前
Linux 基础篇 · 压缩打包与用户管理
linux·服务器·基础命令linux
g3voip2 小时前
防爆电话如何接入SIP调度系统?工业通信系统架构解析
服务器·tcp/ip·系统架构·信息与通信·ip
北斗落凡尘3 小时前
LangGraph 入门实战(12)--使用MCP
后端·python·langchain
jdksjw4 小时前
同步与异步、阻塞与非阻塞、多线程、协程超详细讲解(Python并发编程从入门到精通)
开发语言·python
Mike_Zhang4 小时前
使用python统计FreeSWITCH呼叫并发
python·freeswitch
FL16238631294 小时前
室内易燃物识别易燃评估室内易燃程度识别分割数据集labelme格式1015张85类别
java·服务器·前端
SL-staff4 小时前
技术实践:HR如何用JVS-Logic可视化编排实现考勤数据同步(含节点配置与异常处理)
开发语言·python·低代码·钉钉·可视化编排·jvs-logic·hr技术
zzzzzz3106 小时前
AI 助手最危险的不是报错,而是“看起来成功”:我给工作流加了四道保险
人工智能·python