分享一个开源的go实现的rustdesk-api

lejianwen/rustdesk-api: Rustdesk-api,包含了web后台和web client (github.com)
主要可以使用github登录
而且还包含了webclient



可以直接docker运行

docker run -d --name rustdesk-api -p 21114:21114 \
-v /data/rustdesk/api:/app/data \
-e RUSTDESK_API_RUSTDESK_ID_SERVER=192.168.1.66:21116 \
-e RUSTDESK_API_RUSTDESK_RELAY_SERVER=192.168.1.66:21117 \
-e RUSTDESK_API_RUSTDESK_API_SERVER=http://192.168.1.66:21114 \
-e RUSTDESK_API_RUSTDESK_KEY=123456789 \
lejianwen/rustdesk-api

或者使用docker compose

services:
   rustdesk-api:
    container_name: rustdesk-api
    environment:
      - RUSTDESK_API_RUSTDESK_ID_SERVER=192.168.1.66:21116
      - RUSTDESK_API_RUSTDESK_RELAY_SERVER=192.168.1.66:21117
      - RUSTDESK_API_RUSTDESK_API_SERVER=http://192.168.1.66:21114
      - RUSTDESK_API_RUSTDESK_KEY=123456789
    ports:
      - 21114:21114
    image: lejianwen/rustdesk-api
    volumes:
      - /data/rustdesk/api:/app/data #将数据库挂载出来方便备份
    networks:
      - rustdesk-net
    restart: unless-stopped

结合rustdesk官方的compose

   networks:
     rustdesk-net:
       external: false
   services:
     hbbs:
       container_name: hbbs
       ports:
         - 21115:21115
         - 21116:21116 # 自定义 hbbs 映射端口
         - 21116:21116/udp # 自定义 hbbs 映射端口
         - 21118:21118 # web client 需要
       image: rustdesk/rustdesk-server
       command: hbbs -r <relay-server-ip[:port]> -k 123456789 # 填入个人域名或 IP + hbbr 暴露端口
       volumes:
         - /data/rustdesk/hbbs:/root # 自定义挂载目录
       networks:
         - rustdesk-net
       depends_on:
         - hbbr
       restart: unless-stopped
       deploy:
         resources:
           limits:
             memory: 64M
     hbbr:
       container_name: hbbr
       ports:
         - 21117:21117 # 自定义 hbbr 映射端口
       image: rustdesk/rustdesk-server
       command: hbbr -k 123456789
       #command: hbbr
       volumes:
         - /data/rustdesk/hbbr:/root # 自定义挂载目录
       networks:
         - rustdesk-net
       restart: unless-stopped
       deploy:
         resources:
           limits:
             memory: 64M
     rustdesk-api:
       container_name: rustdesk-api
       environment:
         - RUSTDESK_API_RUSTDESK_ID_SERVER=192.168.1.66:21116
         - RUSTDESK_API_RUSTDESK_RELAY_SERVER=192.168.1.66:21117
         - RUSTDESK_API_RUSTDESK_API_SERVER=http://192.168.1.66:21114
         - RUSTDESK_API_RUSTDESK_KEY=123456789
       ports:
         - 21114:21114
       image: lejianwen/rustdesk-api
       volumes:
         - /data/rustdesk/api:/app/data #将数据库挂载出来方便备份
       networks:
         - rustdesk-net
       restart: unless-stopped
   

更多可以参考README

188 个赞

感谢大佬分享

11 个赞

大佬牛批!!

16 个赞

感谢!最近刚好想使用rustdesk的登录,但是自建中转还要付费才能做到,我去搭建一个体验一下

10 个赞


用上了,体验很好,感谢佬

14 个赞

大佬,这里的 webui前后端和webclient以及pc客户端都是啥,看着有些迷糊,如果要通过浏览器访问内网笔记本,这个要部署哪些

14 个赞

需要在笔记本上安装官方的rustdesk pc端,直接从github下载就行Releases · rustdesk/rustdesk · GitHub
这时候其实已经可以通过官方web client来访问了,不过会很慢,官方webclient在官网底部有链接https://rustdesk.com

推荐自建server,文档 安装 :: RustDesk文档
然后可以安装帖子里的这个API server,方便管理自己的地址簿,而且也带了web client,也可以不用

11 个赞

佬,帖子里的这个api是不是部署前后端,然后就能连接到pc端的客户端(通过浏览器)

9 个赞

这个其实可有可无,完全都可以用官方的,不用api也没事
官方的api server是在pro版本才提供
然后如果不自建服务器,用官方的会比较慢

这个帖子里这个等于部署了一个api server,方便同步地址簿,有自带的webclient也是从官网copy过来的


等于就是实现了这个截图里面的API服务器
如果你只是想通过web控制笔记本,可以先用官方的桌面软件+官方webclient体验一下,会走官方的中继服务器,可能比较慢
然后再自建server,就是hbbr hbbs
再有同步地址簿的需求或者更方便管理地址,更方便使用webclient的需求再自建api server

12 个赞

webclient不知道为啥我部署的全看不清网页的字,不过用倒是能用

9 个赞

是不是网络不好导致显示不清
webclient现在官方还是beta版,我自己就测出来好几个bug,暂时没办法解决

18 个赞

太强了大佬,终于用上了

16 个赞

mark好东西,这下完整了

6 个赞

官方的s6数据目录是/db,你的是/data,有区别吗

7 个赞

lejianwen/rustdesk-api: Custom Rustdesk Api Server, include web admin and web client (github.com)
没懂 这个是安装在VPS服务器还是本地nas上

9 个赞

我看rustdesk的s6是/data啊

7 个赞

和hbbr hbbs装一个服务器上就好了

10 个赞

/data中是id_ed25519 id_ed25519.pub
/db中是db_v2.sqlite3 db_v2.sqlite3-shm db_v2.sqlite3-wal

2 个赞

速度如何啊 这个

5 个赞

s6版本的镜像没有db目录啊

2 个赞