问题背景
最近有远程调试的需求,从笔记本连入配置比较高的电脑(windows)运行代码,查阅资料后,了解到大致就是两个方法:
- 共享屏幕远程控制,如 to desk, 向日葵
- 内网穿透 + ssh
第一个方法面临网络限制、分辨率不匹配的问题,体验较差。另外,虽然这些软件也提供了远程访问 cmd/ssh 的功能,但是需要付费,并且体验也一言难尽(试了一下向日葵的,运行输出内容多后会卡掉,甚至不能进行复制粘贴)
第二个方法又很麻烦,尤其是对于 windows 电脑,要使用 ssh 还需要额外安装杂七杂八的东西;并且内网穿透服务提供商提供的免费服务总是存在"随机xxx"的限制,无法实现一次配置长时间使用的效果。
解决方法
解决方法非常简单,就是使用 Visual Stutio Code 提供的 Tunnel 服务,在提供代码和运行环境的机器上,用自己的 GiHtub 账号启动该服务,则在任意网络环境下,即可通过自己的 GitHub 账号访问到。
具体参考 官方文档 tunnels - using-the-vs-code-ui, 这里不再赘述。
注意:
- 这个功能似乎仍处于测试阶段(2023.7),但是用起来还是很方便的,除了略有延迟以外,和直接操作目标电脑的 vscode 没什么区别。
- 登陆的 GitHub 账户必须是同一个,可以与 vscode 软件的配置同步登陆账户不同。
具体步骤
左下角 账户 - 打开远程隧道访问,然后登陆 GitHub 账号。
获得形如 https://vscode.dev/tunnel/mjolnir/home/thor 这样的链接,可以通过浏览器访问,或在 vscode 里安装 Remote Tunnel
插件后访问(登陆同一个账号)。
其他参考资料
Vscode.dev: Local Development with Cloud Tools | Hacker News