当没有 Internet 连接时,如何将扩展安装到作为 Remote-SSH 远程端的 VS Code 服务器中?

Pet*_* Du 10 linux visual-studio-code vscode-remote

我正在一个没有直接互联网连接的网络中工作。

我的台式电脑上有 VS Code,并使用“远程 - SSH”扩展(版本 0.55)在 Linux VM 上进行开发。它运作得很好。

我有时需要在桌面 VS Code(使用 VS Code 可以轻松完成code --install-extension <path-to-vsix>)和“远程 - SSH”服务器的 Linux 端安装其他扩展。

我的问题是“在这种情况下,如何正确地将扩展安装到Linux服务器中?”

我将描述我所做的事情,有时部分有效,但我已经使用此过程来升级扩展和丢失的功能(例如输出的着色),因此肯定缺少一些东西。我想知道缺少的步骤。

  1. 从连接互联网的计算机下载扩展程序。扩展的页面上有一个“下载扩展”链接,网址为marketplace.visualstudio.com/vscode。将其复制(但可以)到您的 Linux 开发主机上。
  2. 将 VSIX 文件复制到 ~/.vscode-server/data/CachedExtensionVSIXs/ 并通过删除“.vsix”扩展名来重命名该文件。
  3. 有时,扩展在此阶段即可安装。我不确定这种方法有效和有时无效的情况之间有什么区别。至少值得尝试 --- 转到 VS Code,连接到远程主机,查看“扩展”面板,如果可以从那里安装它,那么对您有好处。如果不起作用,请关闭与远程主机的连接。
  4. 假设上一步失败,您需要解压缩 VSIX 并将其复制到位。以下代码以 cmake-tools 扩展为例。
cd /tmp
mkdir cmaketools && cd cmaketools
7z x -tzip ~/.vscode-server/data/CachedExtensionVSIXs/ms-vscode.cmake-tools-1.4.2
cd ~/.vscode-server/extensions/
mv /tmp/cmaketools/extension ms-vscode.cmake-tools-1.4.2
cd ms-vscode.cmake-tools-1.4.2/
cp /tmp/cmaketools/extension.vsixmanifest .vsixmanifest
Run Code Online (Sandbox Code Playgroud)

rio*_*oV8 11

您可以从 Marketplace 下载扩展并将扩展vsix文件上传到远程。

在远程 VSC 中,使用Install from VSIX...扩展栏顶部菜单上的命令。

  • 有没有办法从命令行执行此操作? (2认同)

Sim*_*sch 5

如果您想从远程命令行安装它:

  • 获取当前服务器目录的名称(最简单:连接到远程工作区,然后ps -u $USER -o pid,ppid,user,pcpu,pmem,etime,args通过 vscode 终端运行)
    这可以让您,例如
    /home/me/.codium-server/bin/8311b9c0ddd6ed7738146332e5a0629c76f17be3/bin/
  • 使用以下命令从该目录执行服务器运行时(在本例中codium-server,通常是vscode-server--install-extension <path-to-vsix>