Docker 和 RustDesk 服务器一键部署说明

RustDesk服务器Docker一键部署

Docker 和 RustDesk 服务器一键部署说明

概述

本文档提供在 Ubuntu 系统上安装 Docker 和 RustDesk 服务器的完整部署指南。RustDesk 是一个开源的远程桌面软件,通过自建服务器可以获得更好的性能和安全性。

系统要求

  • Ubuntu24.04LTS 或更高版本
  • 至少 2GB 内存
  • 至少 10GB 可用磁盘空间
  • root 权限或 sudo 权限

部署步骤

第一步:安装 Docker

  1. 下载安装脚本

    # 将文档1的内容保存为 install_docker.sh
    nano install_docker.sh
    
  2. 赋予执行权限

    chmod +x install_docker.sh
    
  3. 执行安装脚本

    sudo ./install_docker.sh
    
  4. 验证安装

    docker --version
    docker compose version
    

第二步:安装 RustDesk 服务器

  1. 下载安装脚本

    # 将文档2的内容保存为 install_rustdesk.sh
    nano install_rustdesk.sh
    
  2. 赋予执行权限

    chmod +x install_rustdesk.sh
    
  3. 执行安装脚本

    sudo ./install_rustdesk.sh
    

第三步:配置防火墙(如需要)

如果系统启用了防火墙,需要开放以下端口:

# 开放 RustDesk 所需端口
sudo ufw allow 21115:21119/tcp
sudo ufw allow 21116/udp

第四步:验证安装

  1. 检查 Docker 服务状态

    sudo systemctl status docker
    
  2. 检查 RustDesk 容器状态

    cd /root/rustdesk-server
    sudo docker-compose ps
    
  3. 查看服务日志

    sudo docker-compose logs
    

重要配置说明

Docker 配置

  • 安装脚本会自动配置国内镜像加速器,提升下载速度
  • 自动创建 docker 服务并设置为开机自启

RustDesk 配置

  • 服务器目录:/root/rustdesk-server
  • 数据存储目录:/data/rustdesk/
  • 关键配置文件:docker-compose.yml
需要修改的配置项:

docker-compose.yml 文件中,请修改以下配置:

  1. RELAY 地址(重要)

    environment:
      - "RELAY=你的服务器IP:21117"
    

    100.19.28.17 替换为你的实际服务器公网 IP 或域名

  2. 加密密钥(可选)

    environment:
      - "KEY=asdfg11199"
    

    可以自定义 KEY 或删除此行使用自动生成的密钥

端口说明

服务端口协议用途
HBBS21115TCPNAT 类型测试
HBBS21116TCP/UDPTCP/UDP 打孔
HBBS21118TCPWeb 客户端支持
HBBR21117TCPTCP 中继
HBBR21119TCPWeb 客户端支持

管理命令

Docker 服务管理

# 启动 Docker
sudo systemctl start docker

# 停止 Docker
sudo systemctl stop docker

# 重启 Docker
sudo systemctl restart docker

RustDesk 服务管理

cd /root/rustdesk-server

# 启动服务
sudo docker-compose up -d

# 停止服务
sudo docker-compose down

# 重启服务
sudo docker-compose restart

# 查看服务状态
sudo docker-compose ps

# 查看日志
sudo docker-compose logs -f

故障排除

常见问题

  1. 端口冲突

    • 检查端口是否被其他程序占用
    • 修改 docker-compose.yml 中的端口映射
  2. 权限问题

    • 确保使用 sudo 执行脚本
    • 检查 Docker 服务是否正常启动
  3. 网络连接问题

    • 确认防火墙设置正确
    • 验证服务器公网 IP 配置正确

日志查看

# 查看 Docker 服务日志
sudo journalctl -u docker.service

# 查看 RustDesk 容器日志
sudo docker-compose logs hbbs
sudo docker-compose logs hbbr

安全建议

  1. 定期更新

    # 更新 Docker 镜像
    cd /root/rustdesk-server
    sudo docker-compose pull
    sudo docker-compose up -d
    
  2. 备份配置

    • 定期备份 /root/rustdesk-server 目录
    • 备份 /data/rustdesk 数据目录
  3. 安全加固

    • 使用强密码保护服务器
    • 定期检查安全更新
    • 配置 SSL/TLS 加密(如使用域名)

客户端配置

在 RustDesk 客户端中配置自建服务器:

  • ID 服务器:你的服务器IP:21116
  • 中继服务器:你的服务器IP:21117
  • Key:docker-compose.yml 中设置的 KEY(如未设置则留空)

注意事项

  1. 确保服务器有稳定的网络连接
  2. 建议使用域名而非 IP 地址,便于后续维护
  3. 定期监控服务器资源使用情况
  4. 重要数据定期备份
### 如何在 Docker部署使用 RustDesk #### 准备工作 为了顺利运行 RustDesk,在开始之前需准备必要的环境配置。创建用于挂载的文件夹结构,以便保存持久化数据。 ```bash mkdir -p /opt/rustdesk/{hbbr,hbbs}/root ``` #### 获取镜像 从 Docker Hub 上拉取指定版本的 `rustdesk-server` 镜像,这一步骤确保所使用的软件稳定可靠[^2]。 ```bash docker pull rustdesk/rustdesk-server:1.1.8-2 ``` #### 启动服务端组件 hbbs hbbr 通过调整命令中的选项来优化性能并适应不同的网络条件。注意移除不必要的参数如 `--net=host` 以增强兼容性安全性。 对于 HBBS(Hub Bridge Service),可以采用如下方式启动: ```bash docker run -d \ --name=rustdesk-hbbs \ -v /opt/rustdesk/hbbs/root:/var/lib/rustdesk \ rustdesk/rustdesk-server:1.1.8-2 hbbs ``` 同样地,针对 HBBR(Hub Broker Relay)部分,则执行下面指令: ```bash docker run -d \ --name=rustdesk-hbbr \ -v /opt/rustdesk/hbbr/root:/var/lib/rustdesk \ rustdesk/rustdesk-server:1.1.8-2 hbbr ``` #### 开放防火墙端口 为了让外部设备能够连接到本地主机上的 RustDesk 实例,可能还需要适当放开系统的防火墙设置。具体操作取决于操作系统及其安全策略[^4]。 例如,在基于 Debian 的 Linux 发行版上可以通过 UFW 来管理入站流量规则: ```bash sudo ufw allow <port_number>/tcp ``` 其中 `<port_number>` 应替换为实际要暴露的服务监听端口号。 #### 使用 docker-compose 方便管理多容器应用 如果希望简化多个关联容器之间的协调工作,推荐利用 `docker-compose.yml` 文件定义整个应用程序栈,并借助 Compose 工具一键完成编排任务[^3]。 一个简单的例子可能是这样的: ```yaml version: '3' services: hbbs: image: rustdesk/rustdesk-server:1.1.8-2 command: ["hbbs"] volumes: - ./hbbs/root:/var/lib/rustdesk networks: - rustdesk-net hbbr: image: rustdesk/rustdesk-server:1.1.8-2 command: ["hbbr"] depends_on: - hbbs volumes: - ./hbbr/root:/var/lib/rustdesk networks: - rustdesk-net networks: rustdesk-net: ``` 上述 YAML 片段展示了如何声明两个相互依赖的服务实例以及它们共同所属的一个内部虚拟网络。 #### 客户端接入指南 最后,当所有服务器侧准备工作完成后,就可以按照官方文档指示下载对应平台下的客户端程序来进行测试验证了[^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值