在日常生活中,线上娱乐与远程社交已经成为许多人不可或缺的一部分。
无论是和朋友异地追剧、情侣一起看电影,还是小团队、社群进行同步观影,如果长期依赖第三方平台,不仅功能受限,还常常面临画质、稳定性、隐私以及使用门槛等问题。
随着越来越多用户开始重视使用体验与数据自主可控,自托管应用逐渐成为一种新的选择。
相比完全依赖第三方视频网站或插件型工具,部署一套属于自己的同步观影系统,不仅更加自由,也能真正做到不受平台限制、体验完全可控。
1. 项目介绍
SyncTV 是一款 开源、自托管、支持多人同步观影 的 Web 应用,专注于解决“异地一起看电影 / 追剧”的核心需求。
它通过房间机制,将多个用户连接在同一个观影会话中,实现播放进度、暂停、快进等操作的实时同步,让所有人始终保持在同一时间线观看内容。
SyncTV 本身不提供视频资源,而是作为一个同步控制与互动平台,可搭配本地媒体、NAS、第三方播放器或网络视频源使用,灵活性极高。
作为一款以 自部署 为核心理念的项目,SyncTV 不依赖任何中心化云平台,所有服务都运行在用户自己的服务器中,适合对隐私、稳定性和可控性有要求的用户。
1.1 项目特点
🎬 多人同步观影体验
SyncTV 支持多人同时加入同一个房间,播放、暂停、拖动进度等操作会实时同步到所有成员,真正实现“大家一起看”的观影体验,非常适合异地朋友、情侣或小型社群使用。
🎨 简洁直观的 Web 界面
项目采用简洁直观的 Web UI 设计,操作逻辑清晰,上手门槛低。
无论是在电脑端还是手机浏览器中访问,都能获得良好的使用体验,无需额外安装客户端。
⚙️ 专注同步与控制,功能克制
SyncTV 并不试图做一个“全能播放器”,而是专注于同步控制与协作观影这一核心场景。
界面和功能设计都围绕实际观影需求展开,避免复杂冗余,适合长期稳定使用。
🏠 房间机制,灵活组织观影
支持创建多个观影房间,不同房间之间互不影响,可用于:
- 不同影片同时播放
- 不同好友圈子使用
- 临时观影或长期固定房间
使用场景非常灵活。
🚀 轻量级架构,资源占用低
SyncTV 整体架构轻量,对服务器性能要求不高,即使是配置较低的云服务器或家用 NAS,也可以稳定运行,非常适合自托管部署。
📦 官方支持 Docker 快速部署
项目官方提供 Docker 镜像,部署过程无需手动编译或配置复杂环境,只需几条简单命令,即可在服务器上完成部署,非常适合初次接触自托管应用的用户。
🔐 自托管部署,隐私可控
所有同步控制、房间数据均运行在用户自己的服务器中,不依赖第三方平台,有效降低隐私泄露风险,也避免了平台封禁、限制或服务下线的问题。
🌍 多平台访问支持
通过浏览器即可使用,支持桌面端与移动端访问,适合不同设备和使用场景,无需额外客户端或插件。
📂 数据持久化,便于维护
通过 Docker 数据卷实现数据持久化,配置和数据可随时备份、迁移或恢复,方便后期维护和服务器更换。
🧭 适用于多种使用场景
无论是:
- 异地朋友一起看电影、追剧
- 情侣同步观影
- 小型社群或影迷群
- 自托管影音娱乐实践
SyncTV 都是一款 稳定、自由、可控 的同步观影解决方案。
1.2 项目展示
演示DEMO:https://synctv.ywsj.eu.org/web/





2.相关地址
gitHub开源项目:https://github.com/synctv-org/synctv
3.搭建环境
- 服务器:这里为了方便搭建项目使用的是莱卡云的境外香港云服务器。(国内用户连接建议使用国内的服务器(需备案域名或者IP+端口)延迟会更低)
- 莱卡云服务器促销活动性价比会更高。查看官网购买链接:https://www.lcayun.com
- 资源配置:2核2G 30G硬盘
由于国内服务器访问海外源较慢,这边为了方便演示直接使用海外服务器搭建。 - 服务器系统:Debian-13
- 【必需】安装Docker:安装好 Docker、Docker-compose
- 【非必需】域名一枚,可用于解析到服务器上使用域名访问

4.搭建视频
哔哩哔哩:
5.搭建方式
5.1 安装docker和docker-compose
安装教程:服务器上安装docker和docker-compose教程
5.2 创建docker文件
#在opt目录下创建synctv文件夹
mkdir -p /opt/synctv
#打开synctv文件
cd /opt/synctv
5.3 创建Docker Compose 配置
#编辑docker-compose.yml
vim docker-compose.yml
填入以下的配置文件
根据自己实际情况来设置
services:
synctv: # 服务名(docker compose 内部标识),可自定义
image: synctvorg/synctv:latest # 使用的镜像:SyncTV 官方镜像(latest 表示最新版本)
container_name: synctv # 容器名称(方便 docker ps / logs 查看),可自定义
restart: unless-stopped # 重启策略:异常退出或重启机器会自动拉起;手动 stop 后不会再自动启动
ports:
- "8080:8080/tcp" # 端口映射(TCP):宿主机 8080 -> 容器 8080(Web 访问一般走 TCP)
- "8080:8080/udp" # 端口映射(UDP):宿主机 8080 -> 容器 8080(部分实时通信/互动可能用到 UDP)
volumes:
- /opt/synctv/data:/root/.synctv # 数据持久化:把容器内配置/数据目录映射到宿主机,更新/重建容器不会丢数据
environment:
- TZ=Asia/Shanghai # 容器时区:影响日志时间、计划任务等显示(按需要改)
5.4 运行synctv的docker镜像
我们先启动docker
# 启动docker
docker compose up -d
# 重启docker
docker compose stop
docker compose start
# 升级docker
docker compose down
docker compose pull
docker compose up -d

5.5 访问自己搭建的synctv
浏览器访问
http://你的服务器IP:8080

默认账号风险(必须改)
SyncTV 每次启动会检查是否存在 root 权限用户:如果没有,会初始化一个 root/root 的默认用户。上线公网前务必第一时间改掉。

先用 root/root 登录
立即修改管理员用户名与密码(或新增管理员并禁用默认账号)
6.日常维护与升级
🔄 更新 synctv
cd /opt/synctv
docker compose pull
docker compose up -d
7.结语
到这里,你已经用 Docker 成功部署了 SyncTV,并能通过浏览器创建房间,实现多人同步观影。SyncTV 的优势在于:自托管、可控、轻量,并且官方提供 Docker 镜像,部署维护成本非常低。如果你准备对公网开放,请务必完成管理员密码修改,并根据需要决定是否接入 OAuth2 开放注册。








