VSCode 远程连接 Vagrant 虚拟机开发环境

VSCode 远程连接 Vagrant 虚拟机和连接 WSL 开发环境大同小异。只是要注意一个小问题:本地可能存在多个 Vagrant 开发环境共享同一个 IP 端口,即 127.0.0.1:2222,这会导致 SSH 连接时报安全警告。在 %USERPROFILE%\.ssh\config 文件里添加如下配置:

Host Vagrant
  HostName 127.0.0.1
  Port 2222
  User vagrant
  StrictHostKeyChecking no
  UserKnownHostsFile NUL
%USERPROFILE%\.ssh\config

其余就跟普通 SSH 远程差不多。比如:

扩展类型有两种:
  • ui
    应用于用户界面的扩展。运行在本地,无法访问远程代码。
  • workerspace
    应用于工作区的扩展。运行在远程,可以访问代码。

当不同虚拟机之间需要相互访问,可以使用 netsh interface portproxy add 命令来映射代理端口:

cmdnetsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8080 connectaddress=192.168.1.123 connectport=8080