VS-Code-远程开发环境搭建

26次阅读

共计 2049 个字符,预计需要花费 6 分钟才能阅读完成。

相信大部分同学都有使用过 Visual Studio Code 这个编辑器,它提供的 Remote - SSH 扩展允许我们在任何远程计算机、虚拟机或运行 SSH 服务器的容器上打开远程文件夹,并充分利用 VS Code 的功能集。

当我们连接到服务器时,就可以与远程文件系统中的任何位置的文件和文件夹进行交互,就像在操作本机一样。

这很酷,而且很有用。

准备工作

搭建前的环境。

  • 一台安装了 Windows 10 18362.418 系统的电脑。
  • 一台安装了 Ubuntu 18.04 LTS 系统的电脑。

当然你都可以在虚拟机上安装它们,如果是学习的话这也是推荐的做法。

在本次搭建过程中选择了以 Ubuntu 作为服务端。

在 Windows 上通过 PowerShell 安装 OpenSSH

使用 PowerShell 安装 OpenSSH,首先以管理员身份启动 PowerShell。若要确保可以安装 OpenSSH 功能,先执行以下操作:

# command
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

# This should return the following output:

Name  : OpenSSH.Client~~~~0.0.1.0
State : NotPresent
Name  : OpenSSH.Server~~~~0.0.1.0
State : NotPresent

如果显示的是 State 不是 NotPresent 而是 Installed,那么表示已经安装了。否则继续,安装客户端功能:

# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

# should return the following output:

Path          :
Online        : True
RestartNeeded : False

在 Ubuntu-18.04 上安装 OpenSSH

可选的更新一下软件列表:

$ sudo apt update

安装 SSH server:

$ sudo apt install openssh-server

查看是否启动:

$ service ssh status

如果没有启动则手动启动:

$ service ssh start

配置 SSH

Windows 上生成新的 SSH 密钥:

$ ssh-keygen -t rsa -b 4096

接下来为远程主机设置基于 SSH 密钥的身份验证,需要执行以下命令:

rem 按提示替换 REMOTEHOST 的值,形如:username@IP
SET REMOTEHOST=your-user-name-on-host@host-fqdn-or-ip-goes-here

scp %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub
ssh %REMOTEHOST% "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub"

如果遇到 The authenticity of host 192.168.0.xxx can't be established. 这个错误,可以选择加上 -o StrictHostKeyChecking=no 参数。也就是说,对应的上面第四行应该改成下面的格式:

scp -o StrictHostKeyChecking=no %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub

安装 VS Code 和扩展 Remote Development

前往 Download Visual Studio Code – Mac, Linux, Windows 下载并安装(仅需要在 Wondws 上安装),安装的步骤比较简单,这里就不细说了。

安装完成后在扩展程序中搜索并安装 Remote Development 插件。

插件安装完后左下角会出现一个绿色的图标,点击选择会在命令窗口弹出几个选项,在下拉选项中选择 Remote SSH:Connect to Host

然后在新的输入框中输入远程用户和 IP 地址(格式:your-user-name-on-host@host-fqdn-or-ip-goes-here),回车。

顺利的话,那么已经可以开始远程开发工作了。

其它

预祝使用愉快。

轻拍【滑稽】。。。

参考

  • Developing on Remote Machines using SSH and Visual Studio Code
  • Visual Studio Code Remote Development Troubleshooting Tips and Tricks
  • vscode 远程开发 | 葉子
  • 安装适用于 Windows 的 OpenSSH | Microsoft Docs
  • Ubuntu 安装远程登录 OpenSSH 服务_Linux 教程_Linux 公社 -Linux 系统门户网站
  • Mac 上玩 Linux(三)使用 SSH 连接 Ubuntu – 简书

正文完
 0