VScode连接远程服务器上的jupyter notebook的实现


Posted in Python onApril 23, 2020

工欲善其事,必先利其器,开发工具这个东西觉得折腾下还是有好处的。但常常感觉专门抽出时间搞这个浪费时间,更常见的现象是已经明显感觉到当前的开发工具用的很别扭,而且告诉自己等这个忙完了要搭一个更方便的工具,到最后却没下文了直到下次再次遇到这种感觉。我这会就是再次遇到了,想用VSCode连接服务器上的jupyter notebook运行tensorflow代码,这样在本地的VScode中直接写代码就方便了很多。整个过程很简单,我自诩记性也不错,但还是不如这白纸黑字来的保险,查资料也是很花时间的。

首先是本机与服务器之间配置ssh就不仔细描述了,要是忘了google一下“ssh远程登录服务器”大把都是资料而且大多数说的都是对的。但最好在~/.ssh/config中按照下面的样子再配置下,ssh用起来会更方便的。

Host remote_server
 HostName 119.254.92.61
 User xuser
 IdentityFile ~/.ssh/id_rsa

接下来是vscode这边要能远程连接到服务器上,记住不是在本地写代码然后再发送到服务器上,而是直接连接到了服务器的某个路径下,VScode对文件的增删改查就相当于是操作了服务器上这个路径下的对应文件(也许说的比较??拢??蔷醯酶拍罨故且?宄?模?J迪终飧瞿康闹恍枰?步:

  • 在扩展(EXTENSIONS)中搜插件Remote - SSH安装后再重新启动VScode。
  • 鼠标点击VScode左下角的齿轮选择命令模式(command paletten),mac对应的快捷键是shift+cmd+p。
  • 在VScode顶部中间弹出的下拉菜单中输入Remote - SSH点击图片中选中的选项,接下来再点击你要连接的服务器的名字就行了,最后会弹出一个新的VSCode。
  • vscode现在就可以远程连接服务器了,如果想写python代码,直接创建文件就可以了。

VScode连接远程服务器上的jupyter notebook的实现

VScode连接远程服务器上的jupyter notebook的实现

而服务器这边要能够创建jupyter noteboot,也就是些安装了,不难就是找起来有点麻烦。我喜欢用conda安装一个虚拟环境就是因为隔离了干净省心,真要是搞坏了直接删了重新建一个。服务器上的操作也只需要3步:

安装虚拟环境:

conda create --name notebook python=3.6

激活虚拟环境并安装jupyter notebook:

source activate notebook
conda install -c conda-forge jupyter notebook

创建一个notebook服务:

sudo jupyter notebook --port=8889 --allow-root

结果如下:最下面的两个URL就是刚才启动的服务的地址,我复制http://localhost:8889/?token=aef9a514fa484b83aa4554371024ebc5b50bbed25c2521ab,当然复制另一个也没问题。

VScode连接远程服务器上的jupyter notebook的实现

最后在已经连接到服务器的VScode中进入命令模式,点击下图下拉菜单中被选中的选项(好绕口,理解就好)。意思也很明显:指定一个本地或者远程的jupyter服务连接。

VScode连接远程服务器上的jupyter notebook的实现

把刚才复制的URL粘贴进去,按回车。

VScode连接远程服务器上的jupyter notebook的实现

创建一个jupyter文件测试下:

VScode连接远程服务器上的jupyter notebook的实现

整个过程就这么简单而且内容也不多,但就是写了快两个小时吧,正好有今晚有时间就整理一下,以后就不需要google再去各种找了。后面几张大图看起来好丑,感觉以后要学一些有关排版设计的内容了,忽然想起自己曾今自学了一段时间PS,好久没用这会好像也忘差不多了。回头自己读刚才写的blog隐隐约约有种很着急的感觉,不知道是思维还是文笔的锅,总之有时间就多写写,“感觉”也是可以慢慢积累的呢~。

到此这篇关于VScode连接远程服务器上的jupyter notebook的实现的文章就介绍到这了,更多相关VScode连接远程服务器jupyter notebook内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python 数据清洗之数据合并、转换、过滤、排序
Feb 12 Python
Python中生成Epoch的方法
Apr 26 Python
Python实现的双色球生成功能示例
Dec 18 Python
Python使用Django实现博客系统完整版
Sep 29 Python
Python使用min、max函数查找二维数据矩阵中最小、最大值的方法
May 15 Python
Python3.5内置模块之os模块、sys模块、shutil模块用法实例分析
Apr 27 Python
python matplotlib拟合直线的实现
Nov 19 Python
基于Python生成个性二维码过程详解
Mar 05 Python
如何提高python 中for循环的效率
Apr 15 Python
PyQt5实现简单的计算器
May 30 Python
Python下划线5种含义代码实例解析
Jul 10 Python
完美解决Pycharm中matplotlib画图中文乱码问题
Jan 11 Python
Python实现仿射密码的思路详解
Apr 23 #Python
利用matplotlib为图片上添加触发事件进行交互
Apr 23 #Python
python中matplotlib实现随鼠标滑动自动标注代码
Apr 23 #Python
使用matplotlib动态刷新指定曲线实例
Apr 23 #Python
Flask模板引擎Jinja2使用实例
Apr 23 #Python
利用pandas向一个csv文件追加写入数据的实现示例
Apr 23 #Python
在matplotlib中改变figure的布局和大小实例
Apr 23 #Python
You might like
PHP漏洞全解(详细介绍)
2012/11/13 PHP
Yii操作数据库实现动态获取表名的方法
2016/03/29 PHP
PHP copy函数使用案例代码解析
2020/09/01 PHP
extjs DataReader、JsonReader、XmlReader的构造方法
2009/11/07 Javascript
javascript+iframe 实现无刷新载入整页的代码
2010/03/17 Javascript
浅谈javascript中createElement事件
2014/12/05 Javascript
javascript异步编程代码书写规范Promise学习笔记
2015/02/11 Javascript
jQuery实现的仿select功能代码
2015/08/19 Javascript
jQuery实现从身份证号中获取出生日期和性别的方法分析
2016/02/25 Javascript
JS实现为排序好的字符串找出重复行的方法
2016/03/02 Javascript
jquery mobile界面数据刷新的实现方法
2016/05/28 Javascript
Javascript基础_简单比较undefined和null 值
2016/06/14 Javascript
jquery实现网页定位导航
2016/08/23 Javascript
详解vue axios用post提交的数据格式
2018/08/07 Javascript
vue通过指令(directives)实现点击空白处收起下拉框
2018/12/06 Javascript
微信小程序tabBar设置实例解析
2019/11/14 Javascript
vue-resourc发起异步请求的方法
2020/02/11 Javascript
uniapp实现可滑动选项卡
2020/10/21 Javascript
Vue中用JSON实现刷新界面不影响倒计时
2020/10/26 Javascript
[49:05]Newbee vs TNC 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python求列表交集的方法汇总
2014/11/10 Python
python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法
2015/05/15 Python
Django配置文件代码说明
2019/12/04 Python
python datetime时间格式的相互转换问题
2020/06/11 Python
详解python中GPU版本的opencv常用方法介绍
2020/07/24 Python
python查询MySQL将数据写入Excel
2020/10/29 Python
ghd官网:英国ghd直发器品牌
2018/05/04 全球购物
吨的认识教学反思
2014/04/27 职场文书
中班幼儿评语大全
2014/04/30 职场文书
职员竞岗演讲稿
2014/05/14 职场文书
简历上的自我评价,该怎么写呢?
2019/06/13 职场文书
OpenCV中resize函数插值算法的实现过程(五种)
2021/06/05 Python
mongoDB数据库索引快速入门指南
2022/03/23 MongoDB
win11无法登录onedrive错误代码0x8004def7怎么办 ?
2022/04/05 数码科技
Ruby使用Mysql2连接操作MySQL
2022/04/19 Ruby
python内置模块之上下文管理contextlib
2022/06/14 Python