在 gcp cloud shell 上运行代码服务器在预览时出错

时间:2021-04-06 00:55:26

标签: google-cloud-platform code-server

我正在尝试在 gcp 云外壳上运行代码服务器。我下载了以下版本

https://github.com/cdr/code-server/releases/download/v3.9.2/code-server-3.9.2-linux-amd64.tar.gz,我认为是正确的,提取内容并运行

code-server --auth none

这给出了以下输出

[2021-04-06T00:53:21.728Z] info  code-server 3.9.2 109d2ce3247869eaeab67aa7e5423503ec9eb859
[2021-04-06T00:53:21.730Z] info  Using user-data-dir ~/.local/share/code-server
[2021-04-06T00:53:21.751Z] info  Using config file ~/.config/code-server/config.yaml
[2021-04-06T00:53:21.751Z] info  HTTP server listening on http://127.0.0.1:8080
[2021-04-06T00:53:21.751Z] info    - Authentication is disabled
[2021-04-06T00:53:21.751Z] info    - Not serving HTTPS

现在,当我尝试 Web Preview -> preview on port 8080 时什么也没有发生,我只是得到一个空白屏幕,在代码控制台上我看到以下错误

2021-04-06T00:50:04.470Z] 错误 vscode 握手超时 {"token":"e9b80ff7-10f9-4089-8497-b98688129452"}

我不确定我需要在这里做什么?

2 个答案:

答案 0 :(得分:1)

  1. 在 Cloud Shell 编辑器中,创建一个扩展名为 .sh 的文件,并按照以下步骤安装代码服务器:

    export VERSION=`curl -s https://api.github.com/repos/cdr/code-server/releases/latest | grep -oP '"tag_name": "\K(.*)(?=")'`
    
    wget https://github.com/cdr/code-server/releases/download/v3.10.2/code-server-3.10.2-linux-amd64.tar.gz
    
    tar -xvzf code-server-3.10.2-linux-amd64.tar.gz
    
    cd code-server-3.10.2-linux-amd64
    
  2. 使用终端运行 vscode.sh 文件: ./vscode.sh

    如果出现警告“permission denied”,输入chmod +x vscode.sh,然后再次继续 运行文件。

  3. 导航到文件夹: cd code-server-3.10.2-linux-amd64/

  4. 导航到垃圾箱: cd bin/

  5. 启动服务器: ./code-server --auth none --port 8080

现在您可以在浏览器中查看 VSCode IDE,方法是使用 Web 预览->端口 8080 上的预览选项或终端中的 HTTP 服务器链接。

答案 1 :(得分:0)

我的直觉是,必须非常详细地研究这篇文章 (Expose code-server)。我想你会发现代码服务器正在侦听端口 8080 上的 IP 地址 127.0.0.1。然后你的想法是使用端口 8080 上的 Web Preview 访问该服务器......但是......注意你的 IP 地址虚拟机。 IP 地址 127.0.0.1 称为环回地址。只有在同一台机器上运行的应用程序才能访问它。我认为,当您运行 Web Preview 时,您正在尝试访问 Cloud Shell 机器的 IP 地址,该地址不是 127.0.0.1。

如果您阅读了上述文章,那么该故事将继续展示如何使用 SSH 转发为该应用程序提供前端。