VS Code Remote Tunnels 怎样让外部设备连接本地开发环境
来源:17golang原创
时间:2026-10-29 00:29:17 186浏览 收藏
如果代码在家里的电脑、办公室工作站或一台没有公网入站地址的主机上,VS Code Remote Tunnels 可以把这台主机变成远程开发端。主机上运行 code tunnel,连接端再打开生成的 vscode.dev 地址或使用 Remote - Tunnels 扩展;源代码、命令执行和扩展运行仍然发生在主机上。
官方地址:https://code.visualstudio.com/docs/remote/tunnels/
最小流程是:在保存代码的主机启动隧道,用同一个 GitHub 或 Microsoft 账号登录连接端,再从 Remote Tunnels 主机列表中打开目标文件夹。它不要求你先配置 SSH 服务,也不是普通的端口转发。
先确认主机和连接端条件
Remote Tunnels 的“主机”是代码所在的电脑,“连接端”可以是另一台电脑上的 VS Code,也可以是浏览器里的 VS Code。主机需要安装 VS Code Desktop 或独立的 VS Code CLI;如果使用 Desktop,code 命令通常已经随安装提供。第一次建立隧道时,主机端要完成账号登录并接受 VS Code Server 的许可条款。
还要提前记住两个边界:主机必须保持运行并让 VS Code 或 tunnel 进程继续工作;同一台远程实例不是为多个用户同时编辑而设计的。登录账号不一致、主机休眠或 VS Code 被退出,都会让连接端看不到可用主机。
用 code tunnel 发布本地开发环境
在代码所在的主机上打开已有命令行,执行下面的命令。命令会启动 VS Code Server,并创建到 Microsoft dev tunnels 服务的安全连接:
# 在保存项目的主机上启动 Remote Tunnel code tunnel --accept-server-license-terms # 如果只想先查看可用的隧道命令和参数 code tunnel --help
首次运行通常会提示完成 GitHub 或 Microsoft 登录。命令完成初始化后会输出一个指向 vscode.dev/tunnel/... 的入口,复制这个地址到外部设备即可。若主机没有完整的 VS Code Desktop,可以安装独立 CLI,再把命令中的 code 换成当前目录下的 ./code。
如果更习惯图形界面,也可以在主机的 VS Code 中打开账户菜单,选择“Turn on Remote Tunnel Access”;或者打开命令面板,执行“Remote Tunnels: Turn on Remote Tunnel Access...”。这两种入口得到的是同一种隧道能力。

在外部设备连接并打开远程文件夹
最直接的方式是打开主机输出的 vscode.dev 地址。连接端第一次访问时,需要使用与主机端相应的 GitHub 或 Microsoft 账号完成认证;认证通过后,选择主机上的文件夹,编辑、搜索、调试和命令执行会针对远程文件系统生效。
如果你使用的是桌面版 VS Code,可以安装并启用 Remote - Tunnels 扩展,然后按以下路径操作:
Remote Tunnels: Connect to Tunnel Remote Explorer: Focus on Remote View
在 Remote Explorer 中选中仍在线的主机即可连接。左下角的远程指示器会显示当前处于远程环境;不要把“看到了主机名称”误认为文件已经复制到本地,远程扩展和 VS Code Server 仍在主机侧协作。

让隧道保持在线,或安全关闭
临时使用时,保持 code tunnel 进程运行即可。若主机容易自动休眠,可以在启动时使用:
# 让隧道运行时尽量阻止主机进入休眠 code tunnel --no-sleep # 需要长期运行时安装 tunnel 服务 code tunnel service install # 不再让这台主机作为当前账号的隧道主机 code tunnel unregister
service install 是把 tunnel 交给系统服务管理,--no-sleep 是运行参数,两者解决的问题不同。要暂时停止 UI 方式创建的隧道,可以在命令面板执行“Remote Tunnels: Turn off Remote Tunnel Access...”。如果只是关闭当前命令行进程,隧道会马上离线,但不会自动注销主机关系。
连接不上时按四个状态排查
- 主机不在列表:先回到主机确认 VS Code 仍在运行,或重新执行
code tunnel;主机休眠也会造成同样现象。 - 能登录但打不开:检查连接端和主机端是否使用同一个 GitHub 或 Microsoft 账号,并确认选择的是正确的主机。
- 浏览器能连、桌面版找不到:在桌面版安装 Remote - Tunnels 扩展,再执行“Remote Tunnels: Connect to Tunnel”。
- 把隧道当成端口转发:Remote Tunnels 解决的是打开远程工作区;若只需要访问主机上的 Web 服务,应单独使用 VS Code 的端口转发功能。
常见问题
Remote Tunnels 必须配置 SSH 服务吗?
不需要先配置 SSH 服务。它通过安全隧道连接远程主机,连接建立后由 VS Code Server 提供远程开发能力。
外部设备需要保存一份项目代码吗?
不需要。项目文件、运行时和大部分远程扩展在主机侧工作,外部设备主要提供编辑器界面和操作入口。
可以让多个客户端同时编辑同一台主机吗?
官方文档把一个 Server 实例设计为一次由一个用户或客户端访问。需要多人协作时,应改用代码托管、Codespaces 或其他协作方案,不要把同一条隧道当成共享编辑会话。
简单记忆:先在代码所在主机启动隧道,再在连接端认证并选择文件夹;主机在线决定隧道是否可见,账号一致决定是否有权限,Remote Tunnels 与端口转发则是两种不同的任务入口。
-
335 收藏
-
380 收藏
-
178 收藏
-
295 收藏
-
306 收藏
-
217 收藏
-
328 收藏
-
135 收藏
-
357 收藏
-
138 收藏
-
255 收藏
-
401 收藏
-
322 收藏
-
333 收藏
-
170 收藏
-
227 收藏
-
499 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习