赞
踩
本文主要讲述VSCode使用SSH进行远程开发。本地主机是Win10,远程主机是Debian10,安装在VMWare里,其它Linux系统也是类似。
首先在Debian10里安装ssh server,
sudo apt install openssh-server
PS:远程主机是ssh server,VSCode是ssh client
还要安装curl或wget,这里安装curl,后面VSCode会用到,
sudo apt install curl
然后打开VSCode,在Extensions里输入remote,
可以看到有多个Extension可选,前面三个都是属于Remote Development的一部分,用于远程连接不同种类的host,如果直接安装Remote Development,就会把这三个都安装上。
由于本文主要是远程连接虚拟机,所以只安装Remote-SSH,安装成功后,在VSCode左下角出现一个绿色图标
首先要保证本机可以和远程机器进行SSH通信。
打开Win10的终端,然后使用ssh命令去连接远程主机,确保可以连通,
ssh wh@192.168.58.134
这里的用户名是虚拟机里已存在的用户名,连接过程如下,要输入用户密码
输入exit然后回车可以退出SSH连接。
如果修改了端口号,就需要加上-p选项来指定端口号,例如,
ssh -p 2233 wh@192.168.58.134
不指定就使用默认端口号22
在Win10终端下,使用下面命令生成SSH Key,
ssh-keygen -t rsa -b 4096 -f %USERPROFILE%/.ssh/debian_rsa
提示输入passphase,直接回车就行,最后会生成key文件,即debian_rsa.pub
生成OK后,使用scp命令把debian_rsa.pub传到虚拟机里,重新命名为key.pub
scp %USERPROFILE%/.ssh/debian_rsa wh@192.168.58.134:~/key.pub
然后使用ssh连接到虚拟机里,
ssh wh@192.168.58.134
接着执行下面命令把key.pub写入到授权文件里并修改权限,
cat ~/key.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
rm ~/key.pub
然后我们在Win10终端下尝试使用这个key去连接虚拟机,
ssh -i %USERPROFILE%/.ssh/debian_rsa wh@192.168.58.134
连接成功,说明我们生成的key没有问题!
点击VSCode左下角那个绿色图标,
在VSCode弹出的界面中,选择Open SSH Configuration File…
然后再选第一个,
接着就是填入对应的信息,读者需要根据自己的情况进行输入,例如HostName,User等,Host可以随意定义
输入完毕后保存,再次点击左下角绿色图标,弹出界面里选择Connect to Host…
接着选择刚才填的Host,即debian10_remote
然后会弹出一个新的VSCode窗口,第一次连接需要一点时间,会提示输入远程机器的操作系统类型,这里选择Linux。
连接成功后,左下角图表会变成如下这样,
剩下的操作就和正常使用VSCode一样了,由于是远程连接,所以插件什么的都需要重新弄下。
虚拟机重启后,使用远程重新连接时,有时会出现The VS Code Server failed to start的问题,
解决办法,
本文主要讲述如何使用VSCode的远程扩展进行远程开发,主要原理是把本机上的SSH Key加入到SSH Server的授权文件里,这样就允许VSCode作为SSH Client和SSH Server进行连接通信,继而实现了远程开发。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。