远程开发常见问题
什么是远程开发?
远程开发是 WebStorm 中一项新功能,使您能够从世界任何地方连接到运行 IDE 后端的远程服务器,并如同在本地计算机上一样无缝地在该服务器上的项目上进行工作。
远程开发有哪些优势?
能够在与本地操作系统不同的操作系统上编辑、构建或调试应用程序。
能够使用比本地计算机更大或更强大的硬件进行开发。
能够将笔记本电脑用作瘦客户端,无需在本地计算机上托管源代码。
能够随时随地工作,同时敏感信息仅托管在公司服务器上。
远程开发的许可方案是什么?
要使用供应商插件或远程开发的内置 SSH 功能,您需要拥有相应 IDE 的许可证,与桌面版本相同。连接到远程 IDE 时将在本地计算机上请求许可证。如果您的本地工作站已有有效的合适许可证,JetBrains Client 将自动选择。如果您希望成为供应商或在组织内部编排远程开发,请联系我们以获取更多信息。 连接远程 IDE 时将在本地计算机上请求许可证。 如果您的本地工作站已有有效的合适许可证,JetBrains Client 将自动选择。 如果您希望成为供应商或在组织内部编排远程开发,请联系我们以获取更多信息。
远程开发的工作原理是什么?
远程开发的工作流程如下:
您拥有一台服务器,该服务器可以是物理机或虚拟机,用于托管源代码并运行无头的 WebStorm 或其他 IDE,以便执行大多数 IDE 功能。
您拥有一个客户端,该客户端是开发人员用于连接服务器的物理计算机,并提供用于开发工作的瘦客户端。 例如,客户端可以是您的笔记本电脑。
您启动 JetBrains Gateway,以便将所有组件连接在一起,并获取一个包含高级编辑器的瘦客户端。该编辑器基于 JetBrains Rider 的 RD 协议,使输入和在编辑器中的操作响应如同本地一般。
或者,您可以使用 JetBrains Toolbox App 连接到不同的主机平台,包括 Windows、macOS 和 Linux,并使用集成的 OpenSSH 实现安全且可自定义的 SSH 连接。 Toolbox App 支持连接到远程 SSH 主机,以及由 Coder、Gitpod 和 CodeCanvas 等提供商提供的环境。
远程服务器的系统要求有哪些?
您可以参考 系统要求 部分。
当前实现方式存在哪些限制?
如果使用 JetBrains Gateway 连接,仅支持使用 Linux 服务器作为后端。 如果使用 JetBrains Toolbox App,也支持 macOS 和 Windows 服务器。
远程服务器和本地计算机,或仅本地计算机,必须能够访问 JetBrains 的以下网址:
https://code-with-me.jetbrains.com
https://download.jetbrains.com
https://download-cf.jetbrains.com
https://download-cdn.jetbrains.com
https://cache-redirector.jetbrains.com
https://data.services.jetbrains.com/products
这些地址提供相应版本的 JetBrains Client(瘦客户端)和 JBR 文件。
什么是 JetBrains Gateway?
基本上, JetBrains Gateway 是一个启动器,用于将后端服务器和本地环境连接在一起。 其运行在本地计算机上,使您能够创建新环境或连接到现有环境。 在 JetBrains Gateway 中请求环境后,它将启动特定于该环境的 JetBrains Client。
我可以通过 WebStorm 连接到远程服务器吗?
是的,您可以。 但它仍会下载 JetBrains Client。 JetBrains Gateway 提供的所有功能在 WebStorm 中均可使用。
或者,您可以使用 JetBrains Toolbox App 连接到远程服务器。
为什么我需要使用 JetBrains Gateway?
避免在客户端机器上进行任何本地开发
为各种远程后端提供单一入口
JetBrains Gateway 的工作原理是什么?
JetBrains Gateway 使所有 JetBrains IDE 后端对用户可用。 它允许您配置新的远程连接并管理现有连接。 它将自动下载与 IDE 后端兼容的精确客户端版本。
我可以将 Remote Development 指向远程服务器上的现有 IDE 吗?
自 221.5481 版本起,您可以手动注册远程服务器上已有的后端 IDE,并使其在 Gateway 中可见。 已安装的 IDE 将出现在可用构建列表中。
请参阅 入门页面 中的相关说明。
如何确保与远程服务器的连接安全?
JetBrains Client 与 IDE 后端之间的通信即使在 SSH 安全隧道中进行,也通过 1.3 TLS 进行端到端加密。 我们采用 TLS 1.3,并在此基础上使用 SSH 安全连接。
您会收集任何遥测数据吗?
遥测规则与 WebStorm 中相同,包含相同的同意选项、设置和默认值。 有关详细信息,请参阅 数据共享。
连接是否使用任何中继服务器?
该连接为直接通信,不涉及 JetBrains 中继服务器。
使用何种机制在本地显示远程 GUI?
基于 WebStorm 平台的 JetBrains Client 和 Projector 技术用于在本地呈现远程图形界面。
预期的延迟是多少?
JetBrains Client 拥有基于 JetBrains Rider RD 协议的高级编辑器,使输入响应迅速。 此外,在 WebStorm 服务器上执行的高级代码智能功能也以本地运行的方式呈现。
在 JetBrains Client 中安装插件时,它们是否会安装到远程服务器?
您可以像在常规项目中一样 安装插件。 远程插件标有 在主机上 标签。 请注意,插件是按项目安装的。
远程会话中将启用哪些键盘绑定?
在远程会话期间,在 JetBrains Client 中设置的所有快捷键在本地和远程均受支持。