html
VS Code 可以说是现代软件开发中的一项奇迹功能——远程 SSH。顾名思义,它让你可以像在本地工作一样使用 VS Code,而你的代码和计算能力则存放在远程机器上。这个扩展常被称为改变游戏规则的利器,将开发体验提升到另一个层次。在通过 SSH 使用 VS Code 几周后,我可以说这是我迄今为止使用过的最令人震惊的功能之一。
通过 SSH 使用 VS Code 消除了许多摩擦
即使在普通机器上
远程 SSH 非常重要,因为它消除了传统上减缓开发速度的许多障碍。VS Code 不再把远程机器当成独立的东西,而是直接把它们整合到你的编辑器里。你可以像在本地一样打开文件夹、编辑文件、运行 Git 命令和调试远程系统上的代码。
要使用 VS Code 远程 SSH,你需要在本地机器上安装一个与 OpenSSH 兼容的 SSH 客户端,并在远程主机上运行 SSH 服务器。在远程端,VS Code 支持多种系统,包括 x86_64 Linux 发行版,比如 Debian 8 及更新版本、Ubuntu 16.04 及以上版本,还有 CentOS 和 RHEL 7 及以上版本,以及 ARM 设备,比如 Raspberry Pi OS Stretch 及更新版本(在 ARMv7 上)和 Ubuntu 18.04 及以上版本(在 ARM64 上)。
如果启用了官方的 OpenSSH 服务器,则支持 Windows 10 和 Windows Server 2016 或 2019,运行 Mojave 或更高版本的 macOS 主机,只需开启远程登录即可。虽然 1 GB 的内存是最低要求,但我建议至少使用 2 GB 的内存和双核 CPU。
要开始使用远程 SSH 功能,您首先需要在本地计算机上安装一个兼容 OpenSSH 的 SSH 客户端。大多数 macOS 和 Linux 系统已经具备此功能,而 Windows 用户则可以轻松安装。接下来,您可以安装 VS Code 或 VS Code Insiders,然后从扩展市场中添加 Remote-SSH 扩展名。如果您计划稍后使用其他远程功能,可以安装更全面的 Remote Development 扩展包。
在远程端,您需要一台运行 SSH 服务器的机器。这可以是一个 Linux 服务器、启用 OpenSSH 服务器的 Windows 系统、开启远程登录的 macOS 机器,或者是云端托管的虚拟机。
在打开 VS Code 之前,在终端中确认 SSH 是否正常工作是个好主意。运行简单的 ssh user@hostname 命令,或者在 Windows 上使用域名格式,确保您可以成功登录。成功后,打开 VS Code,然后在命令面板中选择‘Remote-SSH: Connect to Host…’,然后输入相同的用户和主机详细信息。如果 VS Code 无法自动识别服务器类型,它会提示您手动选择,并记住您的选择,以便下次连接。
之后,VS Code 处理剩下的工作。它在远程机器上安装所需的服务器组件,并在通知中显示进度。如果出现问题,您可以查看详细日志。当连接完成时,您将看到一个全新、完全连接到远程系统的 VS Code 窗口。状态栏将始终显示您连接的主机,点击它可以快速访问特定于远程的命令。
这个功能在很多方面都很有用
它在实际开发中变得非常受欢迎
由于 VS Code 服务器 运行在您的代码所在的远程机器上,您依然可以使用快速、功能齐全的 IDE。构建、语言服务器、测试和数据库访问等重型进程都在远程运行,而您的本地机器只负责处理用户界面。这样可以保持编辑器的响应速度,避免对您的笔记本电脑造成过大压力,即使是在大型或要求苛刻的项目中。
远程 SSH 还让您可以使用本地机器所没有的硬件。您可以连接到云实例、GPU 机器或高端工作站,把它们当作您的开发环境。这对于数据科学、大型代码库、重编译或运行大型数据库特别有帮助,因为本地硬件很快就会成为瓶颈。您在与部署相同的操作系统和架构上进行开发,这样就消除了许多与环境相关的意外。
另一个很大的好处是隔离。您的本地机器保持干净,而远程主机则负责承载项目所需的所有依赖、数据库和实验工具。如果一个项目需要 Python 3.11,而另一个项目还在用 3.9,这就不再是您的问题,因为每个环境都是在远程运行的,无需担心版本管理或影响您的主系统。
远程 SSH 还让新员工的入职和团队协作变得更加轻松。新员工无需花费数天时间来安装工具和解决环境问题,而是可以直接连接到一个已准备好的远程环境,马上开始工作。由于环境是集中管理的,且可以随时随地访问,团队在不同设备和地点之间能获得更一致的结果。
这些优势在日常工作中表现得尤为明显。一个非常常见的场景是在云服务器上直接工作。与其在本地编辑代码再推送到远程机器,不如直接通过 SSH 将 VS Code 连接到云虚拟机进行开发。这对于后端服务、Web 应用程序,以及最终在 Linux 服务器 上运行的所有应用都非常有效。您在与托管应用程序相同的系统上进行编码,这样可以避免微妙的环境不匹配。对于使用轻便笔记本电脑或 Chromebook 的用户来说,这种设置尤其有用,因为远程机器负责处理所有繁重的工作。
远程 SSH 连接对于调试和测试也非常有效。您可以将 VS Code 连接到远程机器上运行的应用程序,并像在本地一样使用调试工具。我发现这在某些特定环境下出现的错误时特别有用,比如测试服务器或仅在 Linux 环境下的设置。
热门跟贴