vscode+Remote-SSH插件实现远程开发

目录

前言

服务器

ssh

Remote-SSH插件

连接

需要注意的地方

远程vsc设置

插件

用户设置与工作区设置

连接失败

git

感想与对比


前言

最近换了台新电脑,想着上一下以前在阿里云买的服务器里配置的code-server刷一下题,才发现以前的服务器已经过期销掉了,然后又重新买了台又便宜又简单的服务器,准备再配置一下code-server,但最新版的code-server怎么弄总有一些问题(总感觉cdr越优化越回去了...),但买的服务器不用又总觉得亏了,正当准备放弃的时候,看到了vscode里插件市场里的remoteSSH插件,于是试了一下,感觉还是相当不错的,这里记录一下使用的过程和一些踩过的坑。

服务器

vscode的remotessh插件通过ssh连接远程服务器进行开发(当然或许本地的什么虚拟机之类的也可以),所以得首先有一台开放了ssh服务的服务器,阿里云、腾讯云之类的平台上倒是经常有活动优惠什么的,我这个服务器是在阿里云上买的,配置简陋了点,不过考虑到价格以及实际需求来说就还算可以。

ssh

一定要保证服务器上开放了ssh服务,并且从本地可以ssh连接到远程服务器上,这里有两种设置,一种是直接输入密码进行连接,另一种是通过配置本地和服务器的sshkey进行免密连接,一般而言更推荐第二种(当然第一种也不是不行,我自己就这么做的),vscode的remotessh插件上也是更推荐这一种,这种方式网上有很多教程了,这里就不再赘述。

Remote-SSH插件

在vscode上找到RemoteSSH这个插件(主题是  Eva Light)

安装它。

之后vsc的侧边工具栏会多出一个图标

点击这个图标上方的一排工具栏中的齿轮按钮进行配置

 选择  C:/Users/[user name]/.ssh/config 文件进行配置

其中的几个参数:

Host:服务器名字,这是给你自己看的名字,想起什么起什么

HostName:这是服务器的ip或者已经绑定的域名

User:登陆时候所选择的用户

整个连接的过程类似于    ssh User@HostName    这样

连接

配置完毕之后右边的面板会出现配置的服务器

我这里服务器下面展开的内容是在服务器上打开的文件夹(工作区)

然后直接进行连接即可,右键唤出菜单选择或者直接点击服务器右边的小按钮(鼠标移动到服务器项目上出现)什么的,这里有两个选择,可以新起一个vsc,在那个里面进行连接,或者就在当前操作的vsc窗口里面进行连接,这个连接会把当前所有的操作内容全部换走,可以当作打开了另一个工作区或者文件夹时候的情况。

连接的时候会提示你输入密码,或者如果你之前配置了本地和服务器之间的sshkey的话就不用输入,这部分可以参考上面在ssh部分所说的内容。

连接成功后默认是没有打开文件夹的,这里可以选择一个文件夹打开,当作自己常驻的工作区。

到这里基本上就大功告成了。

如果要断开连接的话,在左下角会有一个当前连接的服务器的按钮

点击之后唤出菜单,点击关闭远程连接即可。或者可以直接关闭窗口,那么下次再打开vsc的时候会自动连接到上次直接退出时候所连接的服务器。 

需要注意的地方

在操作的过程中踩了一些坑,以及一些觉得需要注意的地方。

远程vsc设置

远程的服务器上是没有装vscode的,而vsc在其上又会有一些针对服务器环境的设置需要,所以在服务器上其实是会有vscode的远程设置的,我的服务器是Ubuntu的操作系统,设置在  ~/.vscode-server/  这个文件夹下面,其中,bin文件夹放置的是连接信息(什么token之类,反正就是一些验证、缓存、ssh之类的东西,保证连接的),data放置的是远程服务器上的用户设置(这里的用户设置和传统意义上vscode的用户设置不太一样,后面再讲)extensions放置的是安装在远程服务器上的插件。

插件

当连接到远程服务器上的时候,插件就会产生本地运行环境和远程运行环境的矛盾,一般而言vscode会自动给你处理好,和环境相关的都会放到远程上使用,比如python,java之类的插件。但在这之前还需要安装插件,安装插件的话是需要先安装到本地再安装到远程服务器上(事实上在连接服务器状态下安装插件的话会同时给你安装到本地和远程服务器并在远程服务器上启用),如果是要为服务器单独安装插件是不行的,服务器安装的插件只能从本地插件选择,这里猜想大概是因为服务器从网络上访问marketplace的问题(服务器无法访问外网,防止不受信任的连接等等,毕竟本地和服务器已经通过ssh连接了,那么这个连接至少是安全的)以及用户设置之类的。这里不太方便的就是有些插件所需的环境在本地没有而只在远程有的,又不想在本地开发的时候插件老弹出来提示你没有这没有那的,我的解决方法是安装插件后一律禁用,然后在需要的本地或远程工作区再启用,只在工作区启用。

用户设置与工作区设置

本地的用户设置是能够影响到远程服务器上的设置的,也就是说服务器与本地都共享本地的用户设置,此外,在    ~/.vscode-server/data/Machine/    下也同样有一个settings.json,一开始我以为这是服务器上的用户设置(这样远程服务器上的工作区的设置就会是  工作区设置>服务器用户设置>本地用户设置),vscode上leetcode插件中的工作区路径只能配置在用户设置中,而这个设置是无法配置在服务器的用户设置上的,也就是说服务器上的用户设置(~/.vscode-server/data/Machine/settings.json)仍然被认为是一种工作区设置,那么就会是  工作区设置>服务器工作区设置>本地用户设置  ,这里可以把服务器看作一个大的工作区,有自己的设置,然后在vscode里面打开的小工作区也有自己的设置。

连接失败

有时候会出现ssh连接失败的情况,但是在命令行中的ssh连接仍然没问题,这里多半是因为             ~/.vscode-server/bin/  文件夹里的缓存过期或者失效的缘故(比如vscode升级之后等等),把里面的内容全部清空然后重新连接就行了。

参考这篇文章:VScode SSH远程连接失败_Hongggggggg的博客-CSDN博客_vscode连不上sshhttps://blog.csdn.net/weixin_41917404/article/details/121330127

git

这里其实和本文没什么关系,但是由于是在做这段工作之间产生的,也就一并记在这里。在配置服务器和GitHub连接时候的sshkey的时候,一开始需要ssh-keygen命令产生key,有三个需要用户填写的部分:路径及名字,密码,确认密码。全部回车代表接受所有默认,我这里修改了名字,然后就陷入了好几天的痛苦之中,后来看了这篇文章   git 公钥权限问题Permission denied (publickey,keyboard-interactive)._chrycoder的博客-CSDN博客https://blog.csdn.net/chrycoder/article/details/80610842才解决。就是不要改名字,不知道什么地方会不对,key所有的设置都接受默认设置就行。

感想与对比

感觉这个插件功能用起来还是很方便的,vsc对于服务器的操作和code-server对服务器的操作都是差不多的,而两边的区别又在于,cdr能够随时随地只要有浏览器就能够进行代码开发,而vscode还需要上自己的vsc才行。而就设置、官方、稳定性等等而言,vsc的功能要方便一些,看具体的需求吧。此外,在Linux下进行开发比Windows上也要方便很多,比如说写java的时候只需要做两步,第一  apt install openjdk-11-jdk,第二,安装vsc上的Java开发插件,然后就可以开始愉快的编码了,这不能不说比Windows上要快和方便很多。

  • 7
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: VS Code 的 Remote-SSH 功能可以让用户通过 SSH 连接到远程的 Linux 服务器,从而在 VS Code 中进行远程开发。使用 Remote-SSH 连接 Linux 服务器需要先在本地安装 VS Code,并安装 Remote-SSH 插件。然后在 VS Code 中打开命令面板,输入“Remote-SSH: Connect to Host”,选择“Add New SSH Host”并填写远程服务器的 IP 地址、用户名和密码等信息。连接成功后,用户可以在 VS Code 中打开远程服务器上的文件、编辑代码、调试程序等操作。 ### 回答2: ### 回答3: VS Code是一个非常优秀的轻量级开发工具,支持各种语言的开发和调试,尤其在python开发中使用愉快。Remote SSH,是VS Code很重要的一项功能,它允许我们在本地电脑上使用VS Code来连接远程Linux服务器,直接在VS Code上编写、调试和运行代码。 使用Remote SSH连接Linux可以带来如下几个优势。 1、本地开发和调试:通过Remote SSH,我们可以在本地开发和调试与远程服务器上相同环境下的代码,节约了安装和配置本地环境的时间和劳动力,而且在本地VS Code上可以使用各种插件,方便开发和调试。 2、便利性:通过Remote SSH,我们可以随时随地连接到远程Linux服务器,无需额外的软件和工具,简单方便。 3、安全性:通过Remote SSH连接,我们可以使用加密传输协议(SSH),在VS Code和Linux服务器之间进行安全通信,保障代码和数据的安全性。 如何进行Remote SSH配置呢? 1、安装Remote-SSH扩展插件。打开Visual Studio Code,Ctrl+Shift+X搜索Remote-SSH,安装并重启。 2、建立SSH连接。在Visual Studio Code左侧侧栏中点击Remote Explorer,点击“Add new SSH host...”,在弹出的框中输入要连接的远程服务器信息,包括服务器地址、用户名、密码,然后保存并建立连接。 3、选择连接。在Remote Explorer中可以看到已经建立的远程SSH连接,选择需要连接的远程服务器,点击“Connect Using SSH”,等待连接成功就可以开始远程开发了。 4、配置工作区。使用Remote SSH连接远程Linux服务器之后,需要对工作区进行配置,将需要使用的文件或目录挂载到VS Code的工作区中,这样就可以直接在VS Code编辑和调试代码了。具体的操作方法可以参考VS Code官方文档。 Remote SSH是VS Code提供的一个非常方便的功能,通过它我们可以实现本地开发远程连接之间的完美结合,提升代码开发和调试效率,同时保证代码安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值