Visual Studio Code Server
2022 年 7 月 7 日,作者 Brigit Murtaugh,@BrigitMurtaugh
远程的现在和未来
注意: 自此博客发布以来,我们已发布有关如何连接到 VS Code Server 的更改。请查看2022 年 12 月的博客文章以获取最新指南。
2019 年,我们发布了远程开发扩展,使您可以在本地使用 VS Code 在 Windows Subsystem for Linux (WSL)、Docker 容器以及通过 SSH 管理的远程物理或虚拟机上“远程”开发应用程序。2020 年,我们通过GitHub Codespaces在远程开发方面又向前迈进了一步,它使您可以在本地或浏览器中使用 VS Code 在云中托管和管理的远程虚拟机上开发应用程序。
我们可以做到这一点,因为 VS Code 在设计上是一个多进程应用程序。从概念上讲,前端(您在其中键入代码的地方)在一个进程中运行,后端服务(托管扩展、终端、调试等)在单独的进程中运行。
今天,我们发布了使这一切成为可能的后端服务的私有预览版,“VS Code Server”,以及一个 CLI,可以轻松安装、更新、管理和连接到该服务。您可以将服务器安装在任何您喜欢的位置(本地开发机器、云中的 VM 等),并使用 Web 版 VS Code(也称为 vscode.dev)通过浏览器安全地访问它,而无需设置 SSH 或 https 的麻烦(当然,如果您愿意,也可以这样做😊)。
入门
由于您用于安全连接到 VS Code Server 的服务目前处于私有预览版,因此您需要通过注册表单请求访问权限。您将收到一封电子邮件,希望在几周内,一旦您可以开始使用该服务。
届时,以下是快速启动并运行的分步说明
-
在您的远程机器上(或您想要针对其进行开发的任何位置)安装 VS Code Server。
注意: 不同的远程架构有不同的安装命令,您可以在服务器文档中查看。这篇文章将在Windows Subsystem for Linux (WSL) 实例中设置 VS Code Server,它在 Windows 上提供了一个真正的、隔离的 Linux 环境,并且可以作为我们的“远程”、隔离机器。
在 WSL 终端中运行以下命令
wget -O- https://aka.ms/install-vscode-server/setup.sh | sh
-
通过在 WSL 终端中运行以下命令来启动 VS Code Server
code-server
提示: 运行
code-server -h
以查看所有可用于启动和管理服务器的命令。 -
您的 WSL 发行版将通过安全隧道与 vscode.dev 通信,这使您可以从 vscode.dev 连接到您的计算机,无论您在哪个网络上。
您将获得一个设备代码和 URL,用于将您的 GitHub 帐户验证到 VS Code Server 的安全隧道服务中。
Please enter the code 7644-1186 on https://github.com/login/device
通过在提供的身份验证 URL 中输入设备代码,验证到隧道服务中。
-
如果这是您第一次从此 WSL 实例启动 VS Code Server,系统将提示您输入连接的名称。CLI 将建议一个有趣的默认“形容词-名词”名称(示例如下),您也可以选择接受。
? What would you like to call this machine? (elegant-pitta) >
-
在身份验证并提供机器名称后,CLI 将启动服务器实例并生成 vscode.dev URL。要连接到您的 WSL 实例,您可以在任何设备上打开此 URL。
注意: 您也可以直接从 vscode.dev 连接到您的 WSL 实例:在 vscode.dev 中打开命令面板 (
F1
) 并运行命令Remote Tunnels: Connect to Remote。
恭喜,您已成功安装并运行 VS Code Server!一旦您访问生成的 vscode.dev 链接,连接就完全建立。您的 WSL 发行版的文件应显示在 VS Code 资源管理器中,您可以开始从 vscode.dev 对其进行编码。
更大旅程的预览
VS Code Server 目前是私有预览版。在此早期预览版中,code-server
CLI 与您今天用于启动桌面 VS Code、安装扩展等的 code
CLI 不同(从终端运行 code -h
😊)。这仅仅是朝着完全统一的 code
CLI 迈出的第一步,该 CLI 使您可以同时管理桌面和服务器。
我们很高兴您试用 VS Code Server。您可以在其文档和介绍视频中了解更多关于它的信息,包括架构、其他命令、实现细节和场景。如果您有任何问题或反馈,请在VS Code Remote Development GitHub 仓库中提交问题,您可以在 Twitter 上向我们发送您的想法 @code。
编码愉快!
Brigit Murtaugh,@BrigitMurtaugh