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脚本把sqlAlchemy对象转换成dict的教程
May 29 Python
python简单分割文件的方法
Jul 30 Python
Python使用sorted对字典的key或value排序
Nov 15 Python
Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围
Jun 25 Python
简单了解Python生成器是什么
Jul 02 Python
Laravel框架表单验证格式化输出的方法
Sep 25 Python
python与mysql数据库交互的实现
Jan 06 Python
pytorch 实现删除tensor中的指定行列
Jan 13 Python
keras实现调用自己训练的模型,并去掉全连接层
Jun 09 Python
Scrapy模拟登录赶集网的实现代码
Jul 07 Python
python3实现名片管理系统(控制台版)
Nov 29 Python
k-means & DBSCAN 总结
Apr 27 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
解析isset与is_null的区别
2013/08/09 PHP
round robin权重轮循算法php实现代码
2016/05/28 PHP
PHP用PDO如何封装简单易用的DB类详解
2017/07/30 PHP
php提取微信账单的有效信息
2018/10/01 PHP
浅谈PHP5.6 与 PHP7.0 区别
2019/10/09 PHP
用脚本调用样式的几种方法
2006/12/09 Javascript
javascript call方法使用说明
2010/01/11 Javascript
JavaScript 事件冒泡简介及应用
2010/01/11 Javascript
jquery判断checkbox(复选框)是否被选中的代码
2010/10/20 Javascript
jQuery插件实现屏蔽单个元素使用户无法点击
2013/04/12 Javascript
JavaScript中的prototype.bind()方法介绍
2014/04/04 Javascript
JS实现一个列表中包含上移下移删除等功能
2014/09/24 Javascript
jQuery中 delegate使用的问题
2015/07/03 Javascript
JS实现点击复选框将按钮或文本框变为灰色不可用的方法
2015/08/11 Javascript
jQuery实现图片渐入渐出切换展示效果
2015/08/15 Javascript
Angularjs实现多个页面共享数据的方式
2016/03/29 Javascript
封装获取dom元素的简单实例
2016/07/08 Javascript
Vue.js开发环境搭建
2016/11/10 Javascript
JavaScript利用Date实现简单的倒计时实例
2017/01/12 Javascript
Vuex之理解state的用法实例
2017/04/19 Javascript
AngularJS2 与 D3.js集成实现自定义可视化的方法
2017/12/01 Javascript
axios拦截设置和错误处理方法
2018/03/05 Javascript
vue-iview动态新增和删除的方法
2020/06/17 Javascript
[05:11]TI9战队采访——VIRTUSPRO
2019/08/22 DOTA
Python内置函数的用法实例教程
2014/09/08 Python
Python多进程通信Queue、Pipe、Value、Array实例
2014/11/21 Python
Pandas:Series和DataFrame删除指定轴上数据的方法
2018/11/10 Python
django解决跨域请求的问题
2018/11/11 Python
python中的tcp示例详解
2018/12/09 Python
python 删除字符串中连续多个空格并保留一个的方法
2018/12/22 Python
Python socket 套接字实现通信详解
2019/08/27 Python
python pygame实现挡板弹球游戏
2019/11/25 Python
python 读取更新中的log 或其它文本方式
2019/12/24 Python
Python内置类型性能分析过程实例
2020/01/29 Python
医学护理毕业生自荐信
2013/11/07 职场文书
读《教育心理学》心得体会
2016/01/22 职场文书