远程开发的系统要求
先决条件
开始在远程计算机上进行开发之前,请确保您具备以下条件:
远程计算机(IDE 的目标)满足 IDE 文章 中列出的最低建议要求。
您已在 Linux 平台上安装了兼容的 SSH 服务器。
Linux 平台为任意较新的 Linux AMD64 发行版,例如 Ubuntu 16.04+、RHEL/CentOS 7+ 等。 我们建议使用具有 2+ 核心、4 GB+ 内存和 5 GB+ 磁盘空间的机器。
您需要在远程主机上启用 sftp 子系统。 在当前实现中,我们将其用于后端部署。
远程开发仍在开发中。 系统要求可能会随时间变化,我们将努力在未来支持更多类型的系统。 不符合要求的系统也可能与远程开发配合使用,但我们无法为过程中可能出现的问题提供支持。
根据项目规模,确保您连接的系统满足以下要求:
最低要求
4 个 vCPU,
x86_64或arm64架构。 此外,相比更多核心,优先选择更高的主频。8 GB 内存。
本地磁盘或网络块存储(例如 EBS )需要约 10 GB 的可用空间。
不支持网络文件系统,例如 NFS 或 SMB。
常见 Linux 发行版的受支持版本。
具体而言,支持 Ubuntu 18.04 LTS、Ubuntu 20.04 LTS、Ubuntu 22.04 LTS、Ubuntu 22.10、CentOS、Debian 和 RHEL。
确保用于连接的用户已将以下任一 shell 设为默认:
bash、dash、fish、csh、tcsh、ksh、zsh。必须可用以下实用程序:
tar、wget(或curl)、dd、chmod、test、mkdir、echo、mv、uname、command和gzip。需要正确设置
$HOME环境变量。 用于连接的用户需要对$HOME/.cache目录具有写入权限。我们支持 Alpine 版本 3.18。 请确保已事先在主机上安装以下软件包:
libxext、libxrender、libxtst、libxi、freetype、procps、gcompat。请查看以下命令示例:
apk add libxext libxrender libxtst libxi freetype procps gcompat
建议使用 OpenSSH 服务器,版本为 7.9p1 或更高。 完全实现 RFC 4254 的其他 SSH 服务器也可能可用,但不受支持。 必须在服务器配置中启用 SSH 端口转发。
服务器需要具有来自互联网的至少 50 Mbps 下行带宽。
客户端与服务器之间的连接应具有至少 20 Mbps 的带宽,且延迟不超过 200 ms。
服务器或容器内的单租户环境。
建议
对于更大型的项目,请增加 CPU 和内存。 IDE 中的平均负载指示将提示您是否建议升级。
建议启用 Swap。 即使在云实例上也是如此。
本地 SSD 存储。
不支持
诸如 Raspberry Pi 之类的单板计算机。 如需在 Raspberry Pi 上运行代码,请查看远程解释器或远程调试等功能。
共享 Web 托管服务。 在此类托管环境中,可能有大量网站共存在由托管提供商拥有并运营的单台服务器上。 托管在该服务器上的所有网站都必须共享其资源,例如带宽、内存和计算能力。 这些资源会在服务器上的所有账户之间平均分配,因此变得相当有限。
在此类情况下,无法提供远程开发支持,原因如下:
除了 SSH 端口之外,服务器上必须有一个空闲端口供 IDE 后端使用。 共享 Web 托管通常不允许占用额外的端口。
可能对运行第三方软件有所限制。
共享 Web 托管会对用户的 CPU 使用施加限制。