You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在GitHub Codespace运行GUI应用遇问题求助(Windows 11环境)

解决方案

1. 修复gh cs ssh找不到ssh的问题

Windows 11默认未预装OpenSSH客户端,按以下步骤安装:

  • 打开「设置」→「应用」→「可选功能」→「查看功能」,搜索OpenSSH客户端并完成安装
  • 重启终端后,重新执行gh cs ssh -- -XY即可正常识别ssh命令

2. 通过X11转发实现GUI应用网页访问

此方案无需额外桌面环境,直接在本地Windows显示Codespace的Firefox窗口:

  • 下载安装VcXsrv(Windows平台的X服务器),启动时选择「Multiple windows」,下一步勾选「Disable access control」后完成启动
  • 在Windows终端执行ipconfig,找到本地局域网IPv4地址(比如192.168.1.100)
  • 回到Codespace终端,设置DISPLAY环境变量:
    export DISPLAY=你的本地IPv4地址:0.0
    # 示例:export DISPLAY=192.168.1.100:0.0
    
  • 执行firefox &,即可在本地VcXsrv窗口中打开Firefox,实现网页访问需求

3. 配置desktop-lite方案(解决找不到.devcontainer文件夹问题)

如果Codespace默认没有.devcontainer文件夹,手动创建并配置:

  • 在Codespace的VS Code中,新建文件夹.devcontainer
  • 在该文件夹内创建两个文件:
    1. devcontainer.json:
      {
        "name": "Desktop Lite",
        "build": {
          "dockerfile": "Dockerfile",
          "args": {
            "VNC_PORT": "5901",
            "NOVNC_PORT": "6080"
          }
        },
        "forwardPorts": [6080],
        "portsAttributes": {
          "6080": {
            "label": "Desktop Lite"
          }
        },
        "postCreateCommand": "sudo systemctl start novnc",
        "overrideCommand": false,
        "remoteUser": "vscode"
      }
      
    2. Dockerfile:
      FROM mcr.microsoft.com/devcontainers/base:ubuntu-22.04
      
      ARG VNC_PORT="5901"
      ARG NOVNC_PORT="6080"
      
      ENV DEBIAN_FRONTEND=noninteractive
      RUN apt-get update && apt-get install -y --no-install-recommends \
          xfce4 \
          xfce4-goodies \
          tightvncserver \
          novnc \
          websockify \
          firefox \
          && apt-get clean && rm -rf /var/lib/apt/lists/*
      
      RUN mkdir -p ~/.vnc
      RUN echo "password" | vncpasswd -f > ~/.vnc/passwd
      RUN chmod 600 ~/.vnc/passwd
      
      RUN echo "#!/bin/bash" > /usr/local/bin/start-vnc.sh && \
          echo "vncserver :1 -geometry 1280x720 -depth 24 -localhost no" >> /usr/local/bin/start-vnc.sh && \
          echo "websockify --web /usr/share/novnc/ ${NOVNC_PORT} localhost:${VNC_PORT}" >> /usr/local/bin/start-vnc.sh && \
          chmod +x /usr/local/bin/start-vnc.sh
      
      ENV DEBIAN_FRONTEND=dialog
      
  • 保存文件后,VS Code右下角会弹出「Reopen in Container」提示,点击确认重新构建Codespace
  • 构建完成后,访问Codespace转发的6080端口,即可通过网页版桌面打开Firefox

内容的提问来源于stack exchange,提问作者Li Muzhi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 22:42:42