教程:在云提供商的虚拟机上安装VS Code并设置远程访问

教程:在云提供商的虚拟机上安装VS Code并设置远程访问

💡 原文英文,约2200词,阅读约需8分钟。
📝

内容提要

本教程介绍了在云提供商上自动安装VS Code的步骤,包括使用Terraform在GCP上创建虚拟机和在虚拟机上安装VS Code。同时提供了在本地Mac笔记本上连接和使用远程虚拟机上的VS Code的步骤。

🔎

延伸解读

适用场景与前提条件

本教程面向DevSecOps团队,当本地资源不足时,可通过云提供商的虚拟机远程运行VS Code供团队成员共享。实施前需拥有GCP账户和GitLab账户,并创建具有Compute Network Admin、Compute Admin、Service Account User、Service Account Admin和Security Admin角色的GCP服务账户,下载其JSON密钥并编码为base64,用于GitLab管道与GCP通信。

自动化流程与关键配置

教程使用两个独立的GitLab项目,分别通过管道完成VM创建和VS Code安装。第一个项目用Terraform在GCP上创建Debian 11虚拟机,需在GitLab CI/CD变量中设置BASE64_GOOGLE_CREDENTIALS、TF_VAR_gcp_project、TF_VAR_gcp_region、TF_VAR_gcp_zone、TF_VAR_machine_type和TF_VAR_gcp_vmname。第二个项目安装VS Code及其依赖,需设置BASE64_GOOGLE_CREDENTIALS、

本地连接与远程使用

在Mac上需安装XQuartz,并通过gcloud compute ssh命令连接远程VM,使用-Y标志启用X11转发。连接后,在远程VM上创建具有read_repository、write_repository、read_registry、write_registry和ai_features范围的个人访问令牌,用于克隆GitLab项目。然后在xterm中输入code命令启动VS Code,并通过File > Open Folder打开克隆的项目。这样,本地Mac可作为瘦客户端,所有工作都在远程服务器上进行。

常见问题与调试

教程提供了键盘映射错误和Web视图加载错误的解决方案。键盘映射错误可通过在VS Code设置中将Keyboard Dispatch设为keyCode并重启解决。Web视图错误可退出VS Code后执行killall code命令,确保所有VS Code进程终止后重启。此外,还提供了调试SSH问题的命令,如查看sshd状态、日志和重启服务。注意:清理作业仅在不再需要VM时运行,且操作前建议备份本地~/.ssh目录。

❓

Q&A

如何在GCP上创建Debian虚拟机?

在GCP上创建Debian虚拟机需要先创建服务账户并下载其密钥,然后在GitLab项目中配置CI/CD变量,最后手动触发虚拟机的创建。

如何在GCP虚拟机上安装VS Code?

在GCP虚拟机上安装VS Code需要创建第二个GitLab项目,配置CI/CD变量,并手动触发安装VS Code及其依赖项的管道。

如何从本地Mac连接到远程虚拟机上的VS Code?

需要在Mac上安装XQuartz,然后通过SSH命令连接到远程虚拟机,最后在虚拟机上启动VS Code。

在远程VS Code中如何克隆GitLab项目?

在远程VS Code中,需要创建个人访问令牌,然后使用git clone命令结合访问令牌来克隆GitLab项目。

使用远程VS Code时可能遇到哪些常见问题?

常见问题包括键盘映射错误和Web视图加载错误,可以通过调整设置或重启VS Code来解决。

如何清理在GCP上创建的虚拟机?

可以在GitLab项目的管道中手动触发清理作业,以删除创建的虚拟机和安装的VS Code。

🏷️

标签

➡️

继续阅读