Visual Studio 代码服务器

2022 年 7 月 7 日,作者:Brigit Murtaugh,@BrigitMurtaugh

遥远的现在和未来

注意:自本博客发布以来,我们已经发布了有关如何连接 VS Code 服务器的更改。查看2022 年 12 月的博客文章以获取最新指南。

2019 年,我们发布了远程开发扩展,它允许您在本地使用 VS Code 在 Windows Linux 子系统 (WSL)、Docker 容器以及通过 SSH 管理的远程物理或虚拟机上“远程”开发应用程序。2020 年,我们通过GitHub Codespaces在远程开发方面又向前迈出了一步,它允许您在本地或在浏览器中使用 VS Code 在云中托管和管理的远程虚拟机上开发应用程序。

我们可以做到这一点,因为 VS Code 从设计上来说就是一个多进程应用程序。从概念上讲,前端(您键入代码的位置)在一个进程中运行,后端服务(托管扩展、终端、调试等)在单独的进程中运行。

今天,我们发布了使这一切成为可能的后端服务的私人预览版,即“VS Code 服务器”,以及一个可以轻松安装、更新、管理和连接到该服务的 CLI。您可以将服务器安装在任何您喜欢的地方(本地开发机器、云中的虚拟机等),并使用 VS Code for the Web(也称为 vscode.dev )通过浏览器安全地访问它,无需进行设置麻烦SSH 或 https(尽管如果您愿意也可以这样做???)。

终端启动 VS Code 服务器,并连接到它的 vscode.dev

入门

由于用于安全连接到 VS Code 服务器的服务处于私有预览状态,因此您需要通过注册表单请求访问权限。一旦您开始使用该服务,您就会收到一封电子邮件(希望在几周内)。

此时,以下是快速启动和运行的分步说明:

  1. 在远程计算机上安装 VS Code 服务器(或者您想要进行开发的任何地方)。

    注意:不同的远程架构有不同的安装命令,您可以在服务器文档中查看。本文将在Windows Linux 子系统(WSL) 实例中设置 VS Code 服务器,它在 Windows 上提供了一个真正的、隔离的 Linux 环境,并且可以充当我们的“远程”隔离计算机。

    在 WSL 终端中运行以下命令:

    wget -O- https://aka.ms/install-vscode-server/setup.sh | sh
    
  2. 通过在 WSL 终端中运行以下命令来启动 VS Code 服务器:

    code-server
    

    提示:运行code-server -h以查看启动和管理服务器的所有可用命令。

  3. 您的 WSL 发行版将通过安全隧道与 vscode.dev 进行通信,这使得您可以从 vscode.dev 连接到您的计算机,无论您使用什么网络。

    您将获得设备代码和 URL,以验证您的 GitHub 帐户进入 VS Code Server 的安全隧道服务。

    Please enter the code 7644-1186 on https://github.com/login/device
    

    通过在提供的身份验证 URL 处输入设备代码,对隧道服务进行身份验证。

  4. 如果这是您第一次从此 WSL 实例启动 VS Code 服务器,系统将提示您输入连接名称。CLI 将建议一个有趣的默认“形容词-名词”名称(示例如下所示),您也可以选择接受。

    ? What would you like to call this machine? (elegant-pitta) >
    
  5. 在验证并提供计算机名称后,CLI 会启动服务器实例并生成 vscode.dev URL。要连接到您的 WSL 实例,您可以在任何设备上打开此 URL。

    注意:您还可以直接从 vscode.dev 连接到 WSL 实例:在 vscode.dev 中打开命令面板 ( F1) 并运行命令Remote Tunnels: Connect to Remote

恭喜,您已成功安装并运行 VS Code 服务器!一旦您访问生成的 vscode.dev 链接,连接就完全建立了。您的 WSL 发行版的文件应该出现在 VS Code Explorer 中,您可以从 vscode.dev 开始针对它进行编码。

更大旅程的预览

VS Code 服务器当前是私人预览版。在此早期预览版中, CLI 与您今天用于启动桌面 VS Code、安装扩展等(从终端运行???)的CLIcode-server不同。这只是迈向完全统一 CLI 的第一步,让您可以管理桌面和服务器。codecode -hcode

我们很高兴您能够试用 VS Code 服务器。您可以在其文档介绍视频中了解更多信息,包括架构、其他命令、实现细节和场景。如果您有任何问题或反馈,请在VS Code 远程开发 GitHub 存储库中提出问题,并且可以通过 Tweet 我们您的想法@code

快乐编码!

布里吉特·墨塔夫,@BrigitMurtaugh