Docker 部署 RustDesk 打造专属远程桌面服务

Docker 部署 RustDesk

一、部署前的准备工作

  1. 安装 Docker 和 Docker Compose
    在服务器上安装 Docker 和 Docker Compose。如果尚未安装,可以参考以下命令:

    # 安装 Docker
    curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
    # 安装 Docker Compose
    yum install docker-compose-plugin
    
  2. 检查 Docker 版本

    docker --version
    docker compose version
    

二、拉取 RustDesk 镜像

根据网络情况选择镜像源。推荐使用国内镜像源加速拉取:

# 国外镜像源
sudo docker image pull rustdesk/rustdesk-server
# 国内镜像源(阿里云)
sudo docker pull registry.cn-beijing.aliyuncs.com/docker_20240704/rustdesk-rustdesk-server:latest

三、创建配置文件

在服务器上创建一个目录用于存放配置文件,例如 /root/rustdesk,并编写 docker-compose.yml 文件:

services:
  hbbs:
    container_name: hbbs
    image: rustdesk/rustdesk-server:latest
    ports:
      - "21115:21115"
      - "21116:21116"
      - "21116:21116/udp"
      - "21118:21118"
    volumes:
      - ./data/hbbs:/root/.rustdesk
    command: hbbs
    environment:
      - RELAYSERVER=your_ip:21117  # 替换为服务器公网IP
      - ENCRYPTEDONLY=1
      - KEY=your_key  # 自定义密钥(可选)
    networks:
      - rustdesk-net
    restart: unless-stopped

  hbbr:
    container_name: hbbr
    image: rustdesk/rustdesk-server:latest
    ports:
      - "21117:21117"
      - "26000:26000"
      - "26001:26001"
    volumes:
      - ./data/hbbr:/root/.rustdesk
    command: hbbr -r 0.0.0.0:26000 0.0.0.0:26001
    environment:
      - RELAYSERVER=your_ip:21117  # 替换为服务器公网IP
      - ENCRYPTEDONLY=1
      - KEY=your_key  # 自定义密钥(可选)
    networks:
      - rustdesk-net
    restart: unless-stopped

networks:
  rustdesk-net:
    external: false

配置说明:

  • hbbs:RustDesk 的 ID 服务器,用于身份验证和会话管理。
  • hbbr:RustDesk 的中继服务器,用于连接两台设备。
  • your_server_ip:替换为服务器的公网 IP 地址。
  • your_key:自定义密钥,用于增强安全性(可选)。

四、启动 Docker 容器

进入配置文件所在目录,执行以下命令启动容器:

cd /root/rustdesk
docker compose up -d

检查容器状态:

docker ps

五、获取密钥并配置客户端

  1. 获取密钥
    运行以下命令查看密钥:

    docker logs hbbs
    

    输出中会显示类似 Your key is: xxxxxxxx 的信息,请记录该密钥。

  2. 客户端配置
    在 RustDesk 客户端中,点击右上角的设置图标,选择“网络” -> “解锁网络设置”,然后填写以下信息:

    • ID 服务器:填写服务器的公网 IP 地址,例如 your_server_ip:21117
    • 密钥:填写从服务器获取的密钥。

六、优化建议

  1. 防火墙配置
    确保服务器的防火墙允许以下端口:

    • TCP:21115、21116、21117、21118、21119
    • UDP:21116
      可以使用以下命令开放端口:
    sudo firewall-cmd --add-port=21115-21119/tcp --permanent
    sudo firewall-cmd --add-port=21116/udp --permanent
    sudo firewall-cmd --reload
    
  2. 使用国内镜像源加速
    如果服务器位于国内,建议配置 Docker 镜像加速:

    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": ["https://docker.xuanyuan.me"]
    }
    EOF
    sudo systemctl daemon-reload
    sudo systemctl restart docker
    
  3. 数据持久化
    docker-compose.yml 中,通过 volumes 将数据挂载到宿主机,确保容器重启后数据不会丢失。


七、常见问题

  1. 无法连接服务器
    • 检查防火墙是否开放了必要的端口。
    • 确认客户端配置的 ID 服务器和密钥是否正确。
  2. 容器无法启动
    • 检查镜像是否拉取成功,可使用 docker images 查看。
    • 检查 docker-compose.yml 文件是否有语法错误。

通过以上步骤,您就可以成功使用 Docker 部署 RustDesk,并享受安全、高效的远程控制体验。如需进一步帮助,请随时联系!

RustDesk下载

Release 1.4.0 · rustdesk/rustdesk

被控机配置

image-20250714171800418

posted @ 2025-07-14 17:21  -Watcher-  阅读(228)  评论(0)    收藏  举报