一年半前我的文章自动化追剧:Prowlarr + Sonarr + Emby + Infuse完美结合。之后迎来更新,这篇文章介绍如何使用完全开源、免费的工具,在 Apple TV、iOS 和 macOS 上构建一个自动化、跨设备的追剧系统。相比之前广泛使用的 Emby + Infuse,我选择了 Jellyfin 和 Swiftfin,并结合 Prowlarr 与 Sonarr,实现内容获取、整理、播放的全流程自动化。
技术栈概览

- Prowlarr:统一管理内容索引器,作为搜索源供 Sonarr 使用。
- Sonarr:自动监控剧集更新,下载、重命名并整理入库。
- Jellyfin:开源媒体服务器,支持主流平台和客户端。
- Swiftfin:Jellyfin 的原生客户端,支持 Apple TV、iPhone、iPad 和 macOS。习惯Infuse的用户还是可以继续使用。
为什么选这一套组合
- 开源免费:无订阅限制,所有核心功能开放使用。
- 自动化高效:配置完成后,全流程无需人工干预。
- 播放体验优秀:Swiftfin 支持断点续播、跳过片头、字幕选择等常用功能。
- 易于扩展:可添加 Radarr(电影)、Lidarr(音乐)、Readarr(图书)等模块。
搭建流程
1. 部署 Jellyfin
- 安装方式:Docker / 原生安装 / Unraid / TrueNAS
- 创建媒体库路径,例如:
/media/tv(电视剧)/media/movies(电影)
2. 配置 Prowlarr
- 添加公开或私有的种子 / Usenet 索引源
- 将 Prowlarr 设置为 Sonarr 的索引服务
3. 配置 Sonarr
- 添加想追的剧集
- 设置视频质量偏好(如 1080p、x265)
- 连接下载器(如 qBittorrent、Transmission)
- 启用自动整理(重命名、分类、移动)
4. 整合 Jellyfin 播放
- 配置媒体库自动扫描,确保内容及时更新
- 安装 Swiftfin 客户端(Apple TV / iPhone / iPad)
- 或通过浏览器访问:
http://your-server-ip:8096
远程访问方案
若希望在外网访问 Jellyfin,推荐以下两种方式:
- Tailscale:建立零配置的私人 WireGuard 网络,Jellyfin 可像局域网服务一样访问,适合无需公网 IP 的用户。
- Cloudflare Tunnel:使用 Cloudflare 提供的反向代理服务,将 Jellyfin 安全地暴露到公网,支持 HTTPS 且无需路由器端口映射。
两者都比直接开放端口更安全,也易于配置。可结合自定义域名和 HTTPS 证书实现远程播放。实测上Cloudflare的速度比Tailscale会更快些。
进阶建议
- 使用 Docker Compose 管理所有服务
- 通过反向代理(如 Nginx Proxy Manager)实现 HTTPS + 远程访问
- 添加 Bazarr 自动下载字幕
- 利用 Watchtower 或 Ouroboros 自动更新 Docker 镜像
使用体验
部署完成后,我已完全替代原本使用的 Emby + Infuse 组合:
- Swiftfin 播放流畅,加载迅速
- 播放进度多端同步,切换设备无缝衔接
- 新剧集更新迅速,几乎实时入库
- 整体系统自控性强、功能灵活,摆脱闭源服务的束缚
总结
Prowlarr + Sonarr + Jellyfin + Swiftfin 是一套适合个人或家庭用户构建媒体中心的解决方案。轻量、开源、功能全面,并兼容 Apple 全平台设备。适合想完全掌控媒体资源、不愿被订阅和闭源软件限制的用户。搭建一次,长期受益。