爱意满满的作品展示区。
ClownFish

2022 年了,我用 Golang 写了一套虚拟桌面系统,还有人用吗?

  •  1
     
  •   ClownFish · Jun 10, 2022 · 4924 views
    This topic created in 1449 days ago, the information mentioned may be changed or developed.

    各位大佬,大家好!

    我最近用 Golang 写了套项目,基于 Docker 容器虚拟桌面。

    其中包括 vnc 的协议解析项目VncProxy,虚拟桌面Agent,还有打包好的虚拟桌面 Image。包括ubuntucentos基础系统,vscodechromeeclipse等等 linux 应用。

    目前业界也挺多类似的项目的,基本原理都是 docker 容器启动xwindow+vncserver+novnc,实现了通过网页访问远程桌面。但是大部分都是基于现有组件组合搭建,并没有使用一套系统从头构建。

    我的这个项目基本原理没变,只是我使用了 golang 实现了一个vncProxy,解析了 vnc 底层的rfb协议,并且有计划使用 golang 实现更多功能,包括vncServerxWindow应用等。

    VncProxy

    VncProxy 项目有计划的完善功能:

    • vnc 代理(已完成)
    • 剪切板(vnc 本身支持)
    • 通过协议远端录制桌面(已完成)
    • 针对桌面编码的优化(已完成)
    • 桌面分享
    • 文件上传下载
    • 声音的输入输出

    预计将来要做的功能

    1. 引入 tigervnc 项目(c/c++),编译进 golang 。
    2. 扩展 vnc 协议,支持更高性能的编码格式。
    3. 基于 novnc 实现高性能图现象编码传输。

    Agent

    Agent 可以作为一个 vncproxy ,也可以作为一个 agent 本身,执行命令,上报数据等功能。

    可以把它作为一个桌面容器的 init 。后续支持 k8s 集群,就能大规模的部署多租户云桌面环境。

    Image

    目前已经完成了 Ubuntu 和 Centos 的基础镜像的构建。正在构建各种应用的镜像。

    项目地址

    如果有对虚拟桌面,golang 开发的小伙伴可以加我 vx-base64:dnByaXgtY29t一起交流。

    我也希望找到志同道合的小伙伴能一起打造该项目。

    对该项目的有任何看法,或者希望多交流的朋友也可以加我哦!

    14 replies    2022-08-01 10:36:04 +08:00
    lwch
        1
    lwch  
       Jun 10, 2022
    原来是 cgo😃
    ClownFish
        2
    ClownFish  
    OP
       Jun 10, 2022
    @lwch 哈哈,被你看到了
    1hscj3sm63
        3
    1hscj3sm63  
       Jun 10, 2022
    小了格局小了,难道你不知道有个东西叫 Xserver 吗
    1hscj3sm63
        4
    1hscj3sm63  
       Jun 10, 2022
    好像有人用 shell 写了个东西叫 x11docker , windows 下面也有一些 Xserver 的实现
    ClownFish
        5
    ClownFish  
    OP
       Jun 10, 2022
    @1hscj3sm63 怎么可能不知道,引用场景不一样哈!可以了解下
    codehz
        6
    codehz  
       Jun 10, 2022
    (能用上 gpu 吗
    ClownFish
        7
    ClownFish  
    OP
       Jun 11, 2022
    @codehz 哈哈哈,目前还不行,不过再支持的计划中,要一定的时间,支持 gpu 以后,应用场景会大很多。
    ysicing
        8
    ysicing  
       Jun 11, 2022
    文档更丰富就更好了,现在使用文档比较少
    codehz
        9
    codehz  
       Jun 11, 2022
    @ClownFish 没 gpu 的话 vscode,chrome 这种根本 ppt
    zCikyx7PGx5mhXbp
        10
    zCikyx7PGx5mhXbp  
       Jun 11, 2022
    类似 LXDE/LxQT desktop 吗?
    ClownFish
        11
    ClownFish  
    OP
       Jun 11, 2022
    @ysicing 嗯,月底会完善文档,目前再初期开发。
    ClownFish
        12
    ClownFish  
    OP
       Jun 11, 2022
    @codehz 支持 gpu 并不复杂,有现成的方案,主要是我的系统要做的工作太多,只能一步一步的来。
    qiandongdong
        13
    qiandongdong  
       Jul 31, 2022
    一直关注着,什么时候有 demo
    ClownFish
        14
    ClownFish  
    OP
       Aug 1, 2022
    @qiandongdong 已经有 demo 了呀! 看项目 https://github.com/vprix
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   857 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 59ms · UTC 20:52 · PVG 04:52 · LAX 13:52 · JFK 16:52
    ♥ Do have faith in what you're doing.