自托管服务
sbondCo/Watcharr avatar
sbondCo/Watcharr

Watcharr:自托管观看清单,用 Go 与 Svelte 搭建,但游戏支持需要额外配置

开源、可自托管的观看列表,包含您的所有内容(电影、电视剧、动漫、游戏),具有用户身份验证、现代、干净的用户界面和非常简单的设置。

1,501 个 Star81 个 ForkGoGPL-3.0

秒懂

它是什么?
Watcharr 是一个用 Go 和 Svelte 编写的自托管观看清单,支持电影、剧集、动漫和游戏。它部署简单,界面现代,但游戏追踪依赖外部配置,且演示实例时好时坏。
适合谁用?
Watcharr 适合已经熟悉 Docker 和自托管流程的个人用户,尤其是那些想要一个界面现代、部署快速的观看清单,并且不介意偶尔查看 GitHub issue 的人。不适合需要稳定演示或完整游戏库管理的人,因为游戏支持需要额外配置 IGDB,且演示服务器可能离线。
能商用吗?
可以,但有条件。GPL-3.0 是 copyleft 许可证:如果你分发包含它的软件,就必须以同一许可证公开该软件的源代码。只在内部运行、不对外分发,则不会触发这项义务。
还在维护吗?
在维护。仓库最近一次提交在 3 天前。
用什么语言写的?
主要是 Go(依据 GitHub 的语言统计)。

以上回答依据项目的 GitHub 数据(最近同步于 2026年9月14日)和我们的分析,不构成法律意见。

开源项目深度解析

它解决什么问题,给谁用

Watcharr 解决的是自托管用户的一个具体痛点:没有一个简单、统一的地方记录你看过、正在看或计划看的电影、剧集和动漫。商业服务如 Trakt 或 IMDb 需要注册账号,数据不在你手里。Watcharr 让你自己托管,数据完全由你控制。它面向的是那些已经运行着 NAS 或家用服务器的人,他们愿意花几分钟部署一个容器,换取一个私有的观看记录。游戏支持是附加功能,但需要额外配置,不是开箱即用。README 里说它是“easily self-hosted content watched list”,语气轻松,但实际部署门槛取决于你对 Docker 的熟悉程度。

架构与数据流:Go 后端加 Svelte 前端

Watcharr 的代码结构很清晰:后端用 Go,前端用 SvelteKit。Go 负责 API 和用户认证,Svelte 负责界面。数据流大致是这样的:用户在前端搜索内容,前端调用后端的 API,后端从外部元数据源(如 TMDB)拉取信息,然后存储到自己的数据库。游戏数据则通过 IGDB 获取,但需要你在配置里提供 API 密钥。整个应用以 Docker 镜像分发,镜像名是 ghcr.io/sbondco/watcharr。README 提到一个 docker-compose.yml 文件,说明官方推荐用 Compose 部署。这种前后端分离的设计让界面响应快,但部署时你需要同时处理两个部分,虽然 Docker 已经封装好了。

部署:一条命令还是看文档

部署 Watcharr 有两种方式。第一种是直接使用仓库根目录的 docker-compose.yml 文件,适合熟悉 Docker 的人。第二种是阅读官方文档,地址是 watcharr.app/docs/category/installation。文档会告诉你如何配置环境变量,比如数据库连接、端口映射等。我没有实际运行过,但根据仓库布局,你至少需要设置一个数据目录来持久化存储。如果你不想读文档,可以试着复制 docker-compose.yml 然后运行 docker compose up -d。不过,游戏支持需要额外步骤,文档里专门有一节叫 game-support-igdb,说明你需要去 IGDB 申请 API 密钥,然后在配置里填入。这个额外配置是很多人会忽略的点。

游戏支持:功能存在,但门槛高

Watcharr 的核心是电影和剧集,游戏是“with some extra configuration”才能用的功能。这意味着默认安装下,你只能管理影视内容。要启用游戏,你得去 IGDB 注册开发者账号,获取客户端 ID 和密钥,然后按照文档配置。这个流程对非技术用户来说是个障碍。而且,IGDB 是 Twitch 旗下的服务,它的 API 有速率限制,如果你有大量游戏要添加,可能会遇到请求失败。相比之下,影视元数据可能来自 TMDB,这个接口通常更宽松。所以,如果你主要想管理游戏库,Watcharr 不是最省事的选择,你可能需要看看专门为游戏设计的工具,比如 GOG Galaxy 的替代品或自定义数据库。

社区工具与扩展:Kodi 插件是亮点

Watcharr 有一个社区工具列表,目前只列出了一个 Kodi 插件,由用户 airdogvan 开发。这个插件可以自动追踪你在 Kodi 上观看的剧集和电影,然后同步到 Watcharr。这对使用 Kodi 作为媒体中心的用户来说很实用,省去了手动标记的麻烦。但 README 也明确说,作者不对这些第三方工具提供保证,也不负责维护。这意味着如果插件出了问题,你得去插件的仓库提 issue,而不是 Watcharr 的仓库。这种依赖外部维护的模式有风险,因为如果插件作者停止维护,你的自动化就会中断。在决定依赖这个插件之前,先检查它的更新频率和 issue 处理情况。

演示实例与可靠性:一个诚实的警告

README 里有一个值得注意的细节:演示实例 beta.watcharr.app 可能经常离线。作者在 2026 年 8 月 23 日提到服务器出了问题,需要几天修复。他还说演示实例是“worst-case scenario for speed”,意思是速度最慢的情况,自托管会快很多。这透露了两点:第一,作者对性能有自知之明;第二,演示服务器的稳定性不是优先事项。如果你打算先试玩一下再决定是否部署,可能会遇到打不开的情况。但作者建议你自己部署一个实例来体验,声称“less than a minute”。这个说法可能有点乐观,因为你需要拉取 Docker 镜像和初始化数据库。不过,考虑到镜像应该不大,一分钟内跑起来是可能的。

维护与升级成本:GPL-3.0 下的自主责任

Watcharr 使用 GPL-3.0 许可证,这意味着你可以自由使用、修改和分发,但如果你分发修改版本,必须开源。对于个人自托管用户来说,这个许可证几乎没有限制。维护成本方面,项目最近更新频繁,v4.2.1 在 2026 年 8 月 4 日发布,距离 v4.2.0 只有一天。这种快速迭代说明项目活跃,但也意味着你需要经常更新镜像来获得修复和新功能。升级时,你需要检查数据库迁移是否兼容,虽然文档可能没有明确说明,但通常这类项目会提供迁移脚本。如果你不更新,可能会错过安全修复。另外,项目默认分支是 dev,意味着开发版本可能不稳定,建议使用发布标签来部署。

编辑结论

Watcharr 适合已经熟悉 Docker 和自托管流程的个人用户,尤其是那些想要一个界面现代、部署快速的观看清单,并且不介意偶尔查看 GitHub issue 的人。不适合需要稳定演示或完整游戏库管理的人,因为游戏支持需要额外配置 IGDB,且演示服务器可能离线。在采用前,先确认你的内容来源是否满足需求,比如是否接受从 TMDB 拉取元数据,以及是否愿意为游戏功能配置外部 API。最后,检查 v4.2.1 的发布说明,确认你需要的功能(如用户认证的细节)是否已实现。

官方来源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
社区笔记

社区笔记