saber酱的抱枕

努力变强

06/19
14:02
软件

VS Code 远程开发 Remote Development 教程

在服务器上用 vim 改代码感觉很蛋疼,我想起前些时候看到 VS Code 支持了远程开发(WSL、Linux、Docker),所以就进行了一番尝试,感觉挺好。

我本机是 Windows 10,服务器是 Debian x9。下面记录下我的操作过程。

1.安装 Remote Development 扩展:

VS Code 远程开发 Remote Development 教程

这个扩展现在已经可以在 VS Code 的稳定版运行了。

安装之后,VS Code 的左下角会出现蓝色的扩展图标。

VS Code 远程开发 Remote Development 教程

点击它,会打开几个命令让我们选择:

VS Code 远程开发 Remote Development 教程

现在不要着急,因为 VS Code 要用 ssh 来远程开发,所以我们需要配置 ssh 相关的一些配置。

2.配置本地的 ssh。

首先确认下有没有 ssh 的密钥,比如我的用户目录里有个 .ssh 目录,里面已经有了密钥,这是以前我用 Git 的时候产生的。id_rsa 是私钥,id_rsa.pub 是公钥。

VS Code 远程开发 Remote Development 教程

如果没有密钥文件,那么就要用 ssh-keygen -t rsa 命令来产生密钥公钥。可以在 Git bash 或者 PowerShell 里执行这个命令。

3.配置远程的 ssh。

确认家目录下有没有 .ssh 文件夹,没有的话创建它。然后在里面创建 authorized_keys 文件,将本地的公钥保存到进去。

打开本地的公钥文件 id_rsa.pub,复制里面的文本。然后在远程执行 vim ~/.ssh/authorized_keys,将复制的内容粘贴,保存。

如有必要(如果后面连不上),可以尝试将 authorized_keys 的权限设置为 600:

chmod 600 ~/.ssh/authorized_keys

4.回到 VS Code 里,打开左下角的远程图标,选择打开配置文件:

VS Code 远程开发 Remote Development 教程

然后选择一个配置文件:

VS Code 远程开发 Remote Development 教程

填入自己的远程主机的 ssh 信息:

VS Code 远程开发 Remote Development 教程

如下:

Host saber
HostName 45.77.151.242
User user

如果你的 ssh 端口是默认的 22,则 Port 部分可以省略。
如果需要指定使用的密钥文件,可以使用 IdentityFile 字段,后面填写私钥的文件路径
如果需要保存多个连接,把每个服务器的连接信息依次往下写就行。

编辑之后保存。

5.开始使用

上面保存了 ssh 配置信息之后,在 VS Code 左侧的 remote 扩展图标里,会显示我们添加的远程主机。

VS Code 远程开发 Remote Development 教程

点击连接图标,如果连接成功,就会打开一个新的 VS Code 窗口,其实就是 ssh 登陆了上去。在新的窗口里我们可以打开文件或文件夹:

VS Code 远程开发 Remote Development 教程

我们可以正常的编辑、保存文件,也可以在终端里执行命令,非常的方便。

VS Code 远程开发 Remote Development 教程

唯一的问题在于我的服务器延迟太高,这似乎会影响到代码提示出现的速度。直接打字不受延迟影响。

目前的折腾就到这里啦~


附录:

配置 SSH Agent

如果你的密钥设置了密码,那么 VS Code 在连接时会要求你输入密码。如果没有 SSH Agent 服务,那么就不能记住密码,每次登陆都要输入密码。可以参考官方文档配置 SSH Agent:

setting-up-the-ssh-agent


ps:

我的 sshd 配置文件里(/etc/ssh/sshd_config),

#PubkeyAuthentication yes                      #允许公钥认证                    
#AuthorizedKeysFile .ssh/authorized_keys       #指定包含用于用户身份验证的公钥的文件 

都没有去掉注释,为什么可以密钥登陆和配置公钥认证呢?

以及折腾的时候被好多过时的以及坑爹的教程坑了

VS Code 远程开发 Remote Development 教程

  1. rua
    Google Chrome 75Google Chrome 75WindowsWindows

    站长有没有VScode相关配置的教程呐

    目前要同时用到py, c, fortran
    然后之前用的是VS里面直接集成了所有的东西,有个问题是装完了电脑就有点卡
    之后看到了vscode 想用VSCode 然而配置不来(我不是计算机相关专业的)

    回复