Remote Development 插件包包含三个核心扩展:1. Remote - SSH,用于连接SSH服务器;2. Remote - Containers,用于在Docker容器内开发;3. Remote - WSL,用于Windows下接入WSL环境。

VS Code 的 Remote Development 插件包不是单个插件,而是一组协同工作的扩展,让你能在本地 VS Code 界面中无缝开发运行在远程环境(如 SSH 主机、容器或 WSL)中的代码。核心价值在于:编辑体验本地化,执行环境远程化,两者几乎零感知切换。
包含哪几个核心扩展?
Remote Development 是一个“插件包”,实际由三个独立但深度集成的扩展组成:
- Remote - SSH:连接任意支持 SSH 的 Linux/macOS 服务器,把远程机器当成本地工作区来用。
- Remote - Containers:直接在 Docker 容器内启动 VS Code Server,代码、依赖、运行时全在容器里,彻底解决“在我机器上能跑”的问题。
- Remote - WSL:专为 Windows 用户优化,一键接入 Windows Subsystem for Linux,编辑和调试都走 WSL 文件系统与命令行环境。
安装 Remote Development 插件包时,这三个会一并装好;你也可以单独启用或禁用其中某一个。
它怎么做到“远程开发却像本地一样”?
关键在于 VS Code 的分层架构:UI 和编辑器运行在本地,而真正的语言服务、终端、调试器、文件监听等后端能力,由一个轻量级的 VS Code Server 在远程环境运行。本地客户端通过 WebSocket 或 SSH 隧道与之通信。
这意味着:
- 语法高亮、智能提示、跳转定义、重构——全部基于远程环境的真实 node_modules / SDK / 编译器路径。
- 终端里敲
npm run dev或python app.py,执行的是远程系统的命令和依赖。 - 断点调试直接命中远程进程,变量查看、调用栈、表达式求值都实时同步。
- 你打开的文件,实际读写的是远程磁盘(SSH/WSL)或容器卷(Containers),不是本地拷贝。
典型使用场景和配置要点
不同扩展适用不同需求,选对是关键:
- 用 Remote - SSH:适合已有稳定服务器(云主机、公司跳板机、树莓派等)。需确保目标机器已开启 SSH 服务,并配置好密钥登录更安全。首次连接会自动上传 VS Code Server,后续复用。
-
用 Remote - Containers:适合项目需要严格一致环境(比如 Python 3.9 + CUDA 11.8)、或想快速试用新框架而不污染本机。只需一个
.devcontainer/devcontainer.json文件,定义镜像、端口转发、扩展预装等,点一下 “Reopen in Container” 就启动干净沙箱。 - 用 Remote - WSL:Windows 用户开发 Linux 原生项目(如嵌入式、Shell 脚本、Linux 内核模块)的首选。无需额外配置,只要 WSL2 已安装且默认发行版就绪,VS Code 自动识别并提供 “Open Folder in WSL” 选项。
常见问题和注意事项
用得顺手前,这几个点容易踩坑:
- 网络不稳定时,SSH 连接可能中断;建议用
ServerAliveInterval保活,或搭配 Mosh(需手动配置)。 - 容器模式下,
localhost指的是容器内部,要访问宿主机服务(如本机数据库),得用host.docker.internal(Docker Desktop)或宿主机 IP(Linux)。 - WSL 中打开 Windows 路径(如
/mnt/c/Users/xxx)性能较差,建议把项目放 WSL 文件系统内(如~/projects)。 - 某些 VS Code 扩展(尤其是依赖本地二进制或 GUI 的)无法在远程端运行,需在
devcontainer.json或远程设置中显式指定“在客户端运行”。
基本上就这些。Remote Development 不复杂,但容易忽略细节。配好一次,后续所有项目都能复用同一套远程环境逻辑,开发体验提升非常实在。








