使用Visual Studio Code进行远程开发
微软的VS code能够适应不同开发环境,提供对多种语言的支持,使得使用VS code开发变得很流行了。因为各种原因(比如在本地设置开发环境困难,或者繁琐,或者开发环境没有图形界面),我们可能需要远程开发。当然我们可以ssh远程登陆到开发环境,用vim编辑并开发,但这样肯定放弃了集成开发环境的各种优势。幸好VS code提供了三个新扩展,来帮助我们进行远程开发。它们支持在容器中、远程物理或虚拟机上以及在Windows中的Linux子系统(WSL)上进行无缝开发。
但是现在使用这些远程扩展需要使用VS code insiders版本,以后可能会在最终版本提供支持。
远程开发扩展包包含了三个扩展:
- Remote-SSH:通过SSH远程连接到物理或者虚拟机
- Remote-Containers:连接Docker容器进行开发
- Remote-WSL:使用Windows 中的Linux子系统(WSL)作为完整的开发环境
简单介绍一下如何使用Remote-SSH。这个扩展是我们可以打开任何安装有SSH服务的远端机器,虚拟机,或者容器上的目录,并且可以使用VS code所有特性,也可以处理远端机器的任意文件和目录。
- 本地机器当然要有SSH客户端。
- 安装VS code insiders版本。
- 安装Remote-SSH扩展
Remote-SSH扩展需要密钥认证方式。以本地是windows环境,远程开发环境是linux为例。本地的公钥一般存储在%USERPROFILE%\.ssh\id_rsa.pub。如果公钥不存在,通过以下命令生成密钥对:
ssh-keygen -t rsa -b 4096
然后用以下命令把本地公钥加入到远端认证key的文件
ssh-copy-id username_on_host@host_ip
OK,准备工作就完成了!
在界面左边栏下面选择Command Palette或者按F1键打开Command Palette,运行Remote-SSH: Connect to Host...输入username@hostname,回车。如果连接成功,会打开一个新的VS code窗口,左下角状态栏会显示SSH连接状态。如果打开一个terminal,会显示远程机器的terminal。可以使用所有的VS code的功能完成开发调试工作。

遗憾的是,Remote-SSH扩展只支持x86_64架构的基于linux的OS。如果是其他的架构的系统,会弹出一个失败的信息。

这种情况下,注定是无法使用VS code的全部功能的。不过可以使用Remote Workspace扩展,把VS code当做一个远程的文本编辑器来使用,就好像在本地编辑一样。使用这个扩展,需要建立一个.code-workspace文件,把远程工程路径写入uri键值对,支持常见的FTP,FTPs,SFTP协议。通过菜单File >> Open Workspace...打开建立的.code-workspace文件即可。
使用Visual Studio Code进行远程开发的更多相关文章
- 使用 Visual Studio Code 进行远程开发
使用 Visual Studio Code 进行远程开发 在完成了 AT 指令入门的学习之后,接下来就要使用 AT 指令进行 Socket 通信了.问题在于,之前 .NET 的 Socket 编程只需 ...
- 使用Visual Studio Code搭建TypeScript开发环境
使用Visual Studio Code搭建TypeScript开发环境 1.TypeScript是干什么的 ? TypeScript是由微软Anders Hejlsberg(安德斯·海尔斯伯格,也是 ...
- 新成员!Visual Studio Code --跨平台的开发工具(支持OSX, Linux 和 Windows)
原文出处:新成员!Visual Studio Code --跨平台的开发工具(支持OSX, Linux 和 Windows) 这是我的文章备份 http://www.dotblogs.com.tw/ ...
- Visual Studio Code和Docker开发asp.net core和mysql应用
Visual Studio Code和Docker开发asp.net core和mysql应用 .net猿遇到了小鲸鱼,觉得越来越兴奋.本来.net猿只是在透过家里那田子窗看外面的世界,但是看着海峡对 ...
- Windows下visual studio code搭建golang开发环境
Windows下visual studio code搭建golang开发环境 序幕 其实环境搭建没什么难的,但是遇到一些问题,主要是有些网站资源访问不了(如:golang.org),导致一些包无法安装 ...
- Visual Studio Code配置 HTML 开发环境
Visual Studio Code配置 HTML 开发环境 https://v.qq.com/x/page/l0532svf47c.html?spm=a2h0k.11417342.searchres ...
- Visual Studio Code配置GoLang开发环境
Visual Studio Code配置GoLang开发环境 在Visual Studio Code配置GoLang开发环境 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页: ...
- Visual Studio Code 做PHP开发
Visual Studio Code 做PHP开发 1. 在Windows 10环境下安装PHP: 1. 下载自己中意的PHP版本:http://windows.php.net/download (我 ...
- 教你用Visual Studio Code做PHP开发 - 微软官方工具,IDE中的黑马
转载于:http://bbs.wfun.com/thread-902655-1-1.html,仅供自己备忘 本文为我在智机网的原创 ] 关于Visual Studio Code,可能有的开发者很陌生 ...
随机推荐
- Nginx专题(2):Nginx的负载均衡策略及其配置
本文介绍了Nginx的负载均衡策略,一致性hash分配原理,及常用的故障节点的摘除与恢复配置. 文章来源:宜信技术学院 & 宜信支付结算团队技术分享第一期-宜信支付结算八方数据团队高级技术经理 ...
- git 使用详解(4)—— commit -a -m/diff --staged/rm/mv
查看已暂存和未暂存的更新 实际上 git status的显示比较简单,仅仅是 列出了(修改过的.新创建的.已经暂存但未提交的)文件,如果要查看具体修改了什么地方,可以用git diff 命令.稍后我们 ...
- HDU 5121 Just A Mistake
Just A Mistake Time Limit: 5000/5000 MS (Java/Others) Memory Limit: 512000/512000 K (Java/Others) ...
- Ceph分布式存储-总
Ceph分布式存储-总 目录: Ceph基本组成及原理 Ceph之块存储 Ceph之文件存储 Ceph之对象存储 Ceph之实际应用 Ceph之总结 一.Ceph基本组成及原理 1.块存储.文件存储. ...
- ARTS-S k8s常用命令
本地访问minikube的docker eval $(minikube docker-env) 删除statefulset kubectl delete statefulset web --casca ...
- USB摄像头之130w像素 OV9655配置,ov9650,ov7725,ov7670
USB摄像头之130w像素 OV9655配置 为了usb2.0采集达到足够的速率,不得不将采用raw格式输出. // 20150411 XVGA 1280*1024 实际上位机需要2560*1024 ...
- Seata 配置中心实现原理
Seata 可以支持多个第三方配置中心,那么 Seata 是如何同时兼容那么多个配置中心的呢?下面我给大家详细介绍下 Seata 配置中心的实现原理. 配置中心属性加载 在 Seata 配置中心,有两 ...
- 浅谈Redis面试热点之工程架构篇[1]
前言 前面用两篇文章大致介绍了Redis热点面试中的底层实现相关的问题,感兴趣的可以回顾一下:[决战西二旗]|Redis面试热点之底层实现篇[决战西二旗]|Redis面试热点之底层实现篇(续) 接下来 ...
- Servlet还有学习的必要吗?(手工搭建Servlet)
前言 在初学Java web的时候,就曾听到过这样一种说法: java Web的演变过程大概可以分为4个阶段: jsp + Servlet + jdbc spring + struts2+ hiber ...
- Tomcat系列(一)- 整体架构
整体架构 我们想要了解一个框架,首先要了解它是干什么的,Tomcat我们都知道,是用于处理连接过来的Socket请求的.那么Tomcat就会有两个功能: 对外处理连接,将收到的字节流转化为自己想要的R ...