本文发布于 404 天前,最后更新于 400 天前,其中的信息可能已经有所发展或是发生改变。
前言
一直有远程桌面的需求,内网 RDP 和 Parsec 体验一直不错
外网大多用的大厂软件,TeamViewer,向日葵,ToDesk 等,最早按我的体验中,是 ToDesk 最良心好用,但自从大规模商业化运行后,广告多了,清晰度,速度慢了,而且在mac平台上还有很多奇怪的 Bug
故尝试一下新的方案,开源的 RustDesk,同时搭建服务器辅佐
搭建
Docker 方案
虽然搭建方法有很多,不过一般使用还是推荐 Docker,所以以下也是基于此搭建
既然是 Docker 搭建,就不介绍服务器规格了
Docker 安装我就不多嘴介绍了
创建个目录存放 rustdesk-server 的 docker-compopse.yml 文件
突然想起来有朋友问我搭建rust游戏服务器来着
docker-compose.yml 内容如下
version: '3'
networks:
rustdesk-net:
external: false
services:
hbbs:
container_name: hbbs
ports:
- 21115:21115
- <hbbs_port>:21116 # 自定义 hbbs 映射端口
- <hbbs_port>:21116/udp # 自定义 hbbs 映射端口
image: rustdesk/rustdesk-server
command: hbbs -r <your_domain>:<hbbr_port> # 填入个人域名或 IP + hbbr 暴露端口
volumes:
- <mount_path>:/root # 自定义挂载目录
networks:
- rustdesk-net
depends_on:
- hbbr
restart: unless-stopped
deploy:
resources:
limits:
memory: 64M
hbbr:
container_name: hbbr
ports:
- <hbbr_port>:21117 # 自定义 hbbr 映射端口
image: rustdesk/rustdesk-server
command: hbbr
volumes:
- <mount_path>:/root # 自定义挂载目录
networks:
- rustdesk-net
restart: unless-stopped
deploy:
resources:
limits:
memory: 64M
当然,像我这种懒人肯定是选择啥都不改,那就
version: '3'
services:
hbbs:
container_name: hbbs
image: rustdesk/rustdesk-server:latest
command: hbbs
volumes:
- ./data:/root
network_mode: "host"
depends_on:
- hbbr
restart: unless-stopped
hbbr:
container_name: hbbr
image: rustdesk/rustdesk-server:latest
command: hbbr
volumes:
- ./data:/root
network_mode: "host"
restart: unless-stopped
然后在 yml 目录下 docker compose up -d
结束
顺带补充一下常见 docker-compose 命令
# 运行容器
docker-compose up -d
# 停止容器
docker-compose stop
# 启动容器
docker-compose start
# 重启容器
docker-compose restart
# 下线(删除)容器,删除容器不会导致你的数据丢失,你的数据库保存在了当前目录下的data文件夹内,请妥善保管该目录
docker-compose down
服务器部署完毕后,会在目录下生成data文件夹,包含容器数据,
若开启 强制密钥加密认证 这需要拷贝 data 目录下 id_ed25519.pub 内容,这是连接服务器的凭证
不过因为我这懒鬼没有开启,也就不在演示了
最后在客户端的设置界面将服务器信息填写到 ID服务器 中即可
(其余内容如若无特殊修改会自动获取
虽然实际过程中还有端口放行等操作之类,但与之关联不大
所以先不在多提,所以,又愉悦的水完了一篇文章