更新时间:2024-10-30 GMT+08:00

Notebook如何离线安装VS Code Server

背景介绍

VS Code执行remote-ssh远程连接时,会根据用户的VS Code版本去自动更新vscode-server和Vscode-client的版本,通过本地和远端尝试下载相关的安装脚本和包。当远端网络和本地网络不通时,可以手动下载对应版本的Vscode-server包,然后离线安装。

解决方法

  1. 打开VS Code,选择“Help>About”,并记下“Commit”的ID码。

  2. 确认创建Notebook实例使用的镜像的系统架构,可以在Notebook中打开Terminal,通过命令uname -m查看。
  3. 下载对应版本的vscode-server,根据Commit码和Notebook实例镜像架构下载。

    如果下载报错“Not Found”,请下载别的版本VS Code重新在本地安装,目前推荐: Vscode-1.86.2。

    • 如果实例的架构是x86_64的,通过下面的链接,手动修改comment-id(commit-id替换时去掉尖括号),使用浏览器下载vscode-server-linux-x64.tar.gz文件。
      https://update.code.visualstudio.com/commit:<提交的ID码>/server-linux-x64/stable
    • 如果实例的架构是aarch的,通过下面的链接,手动修改comment-id(commit-id替换时去掉尖括号),使用浏览器下载vscode-server-linux-arm64.tar.gz文件。下载完成后,将下载的vscode-server-linux-arm64.tar.gz文件重命名为“vscode-server-linux-x64.tar.gz”。
      https://update.code.visualstudio.com/commit:<提交的ID码>/server-linux-arm64/stable

    例如:commit-id是863d2581ecda6849923a2118d93a088b0745d9d6,os架构是x86_64,修改链接为:

    https://update.code.visualstudio.com/commit:863d2581ecda6849923a2118d93a088b0745d9d6/server-linux-x64/stable
  4. 将下载的vscode-server-linux-x64.tar.gz,上传到ModelArts实例的“/home/ma-user/work”目录下。

    执行下面命令,并指定commitId(注意:直接在Notebook的Terminal里执行,commit-id替换时去掉尖括号)

    commitId=<提交的ID码>
    mkdir -p /home/ma-user/.vscode-server/bin/$commitId
    tar -zxvf vscode-server-linux-x64.tar.gz -C /home/ma-user/.vscode-server/bin/$commitId  --strip=1
    chmod 750 -R /home/ma-user/.vscode-server/bin/$commitId
  5. 关闭VS Code,重新从Notebook实例列表页面打开VS Code(注意:需要关闭本地vscode,不然可能会报多个安装进程正在运行中)。