Rustdesk server docker-compose 一键搭建教程
官网教程 使用 Docker 安装您自己的服务器
#修改脚本中的IP和password# 设置脚本执行权限
chmod +x deploy-rustdesk.sh manage-rustdesk.sh# 执行部署
./deploy-rustdesk.sh
rustdesk官网地址
github客户端下载
rustdesk-server.yml
version: '3'
services:hbbs:image: rustdesk/rustdesk-server:latestcontainer_name: hbbscommand: hbbs -r xxx.IP.xxx.xxx:26116 -k passwordports:- "21115:21115" # NAT 类型测试- "21116:21116" # TCP 打洞- "21116:21116/udp" # UDP 心跳- "21118:21118" # 网页客户端(可选)volumes:- /developer/docker/rustdesk/data:/rootrestart: unless-stoppedhbbr:image: rustdesk/rustdesk-server:latestcontainer_name: hbbrcommand: hbbr -k yourpasswordports:- "21117:21117" # 中继服务- "21119:21119" # 网页客户端(可选)volumes:- /developer/docker/rustdesk/data:/rootrestart: unless-stopped
deploy-rustdesk.sh
#!/bin/bashecho "正在部署RustDesk服务器..."# 检查Docker是否安装
if ! command -v docker &> /dev/null; thenecho "Docker未安装,正在安装Docker..."sudo yum install -y yum-utilssudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.reposudo yum install -y docker-ce docker-ce-cli containerd.iosudo systemctl start dockersudo systemctl enable dockerecho "Docker安装完成"
fi# 检查Docker Compose是否安装
if ! command -v docker-compose &> /dev/null; thenecho "Docker Compose未安装,正在安装..."sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-composeecho "Docker Compose安装完成"
fi# 创建数据目录
mkdir -p /developer/docker/rustdesk/data# 设置防火墙
echo "配置防火墙..."
if command -v firewall-cmd &> /dev/null; thensudo firewall-cmd --permanent --add-port=21115-21119/tcpsudo firewall-cmd --permanent --add-port=21116/udpsudo firewall-cmd --reloadecho "防火墙配置完成"
fi# 启动服务
echo "启动RustDesk服务..."
docker-compose -f rustdesk-server.yml up -decho "RustDesk服务器部署完成!"
echo "请检查服务状态: docker-compose -f rustdesk-server.yml ps"
echo "查看日志: docker-compose -f rustdesk-server.yml logs"
管理服务 manage-rustdesk.sh
#!/bin/bash# RustDesk服务管理脚本case "$1" instart)docker-compose -f rustdesk-server.yml up -d;;stop)docker-compose -f rustdesk-server.yml down;;restart)docker-compose -f rustdesk-server.yml restart;;status)docker-compose -f rustdesk-server.yml ps;;logs)docker-compose -f rustdesk-server.yml logs -f;;update)docker-compose -f rustdesk-server.yml pulldocker-compose -f rustdesk-server.yml downdocker-compose -f rustdesk-server.yml up -d;;*)echo "使用方法: $0 {start|stop|restart|status|logs|update}"exit 1;;
esac