Screensy 项目安装和配置指南
screensy Simple peer-to-peer screen sharing 项目地址: https://gitcode.com/gh_mirrors/sc/screensy
1. 项目基础介绍和主要编程语言
Screensy 是一个简单的点对点屏幕共享解决方案,旨在提供一个轻量级的屏幕共享工具。该项目由两部分组成:
- Rendezvous 服务器:用于协议协商和发现观众。
- Web 网站:运行在用户浏览器中,负责实际的屏幕共享功能。
Screensy 主要使用以下编程语言和工具:
- TypeScript:用于编写 Rendezvous 服务器和 Web 网站的逻辑。
- Go:用于编写 Web 服务器的后端逻辑。
- HTML/CSS:用于构建用户界面。
2. 项目使用的关键技术和框架
Screensy 项目使用了以下关键技术和框架:
- WebRTC:用于实现浏览器之间的实时视频流通信。
- Caddy:作为反向代理服务器,支持 WebSocket 协议。
- Coturn:作为 STUN/TURN 服务器,用于 NAT 穿透和媒体中继。
- Docker:用于简化项目的部署和运行。
3. 项目安装和配置的准备工作和详细安装步骤
准备工作
在开始安装之前,请确保您的系统满足以下要求:
- 安装了 Docker 和 Docker Compose。
- 拥有一个域名,并配置了 DNS 解析。
- 确保服务器上的防火墙允许以下端口:80、443、3478(TCP/UDP)、49152-65535(UDP)。
安装步骤
步骤 1:克隆项目仓库
首先,克隆 Screensy 项目到您的本地或服务器上:
git clone https://github.com/screensy/screensy.git
cd screensy
步骤 2:配置 Caddyfile
编辑项目根目录下的 Caddyfile
,将第一行的域名替换为您自己的域名。例如,如果您想在 example.com
上托管 Screensy,请将 Caddyfile
修改为:
example.com {
reverse_proxy website:80 {
@rendezvous {
header Connection *Upgrade*
header Upgrade websocket
}
reverse_proxy @rendezvous rendezvous:4000
}
}
步骤 3:配置 TURN 服务器
编辑 turnserver.conf
文件,将 external-ip
设置为您的域名。例如:
external-ip=example.com
步骤 4:启动 Docker 容器
使用 Docker Compose 启动 Screensy 服务:
docker-compose up -d
步骤 5:验证安装
打开浏览器,访问您的域名(例如 https://example.com
),您应该能够看到 Screensy 的界面,并开始使用屏幕共享功能。
可选配置:密码保护
如果您希望为 Screensy 实例添加密码保护,可以按照以下步骤操作:
- 使用 Caddy 生成密码哈希:
caddy hash-password
- 将生成的哈希值添加到
Caddyfile
中,例如:
basicauth {
alice JDJhJDE0JDhkSmdoNy9BZ3BlZlRmSkFROHRUTE9jMW5jV1pUMVdZcW92WFdLVGZTcmFsL3RoeFR4OVlH
}
- 重新启动 Caddy 服务以应用更改。
总结
通过以上步骤,您已经成功安装并配置了 Screensy 项目。Screensy 提供了一个简单而强大的屏幕共享解决方案,适用于各种点对点的屏幕共享需求。
screensy Simple peer-to-peer screen sharing 项目地址: https://gitcode.com/gh_mirrors/sc/screensy