Ansible + Docker Registry Docker Registry+ Plex Plex+ Sonarr Sonarr + Intel/Nvidia GPU+ Cloudflare+ Radarr+ Traefik

用 Ansible Playbook 一键部署 Docker 家庭媒体服务器全家桶

Ansible 负责自动化编排,Docker 运行媒体栈容器,GPU 加速转码

✓ 自动化安装与初始化✓ 支持 GPU 加速与 SSO ✕ Nvidia 驱动需自行安装

方案简介

HMS-Docker 是一个 Ansible Playbook 项目,用于在多种平台上自动化部署一套运行于 Docker 之上的家庭媒体服务器(Home Media Server)栈。它面向希望自建媒体中心的用户,把 Plex、Sonarr、Radarr、Prowlarr 等常见媒体服务容器统一编排起来,并提供 GPU 转码加速、SSL、SSO、DDNS 等进阶能力,减少手工配置成本。

亮点与能力

  • GPU 加速媒体转码,支持 Intel 与 Nvidia GPU
  • 自动安装 Docker
  • 容器自动更新
  • 自动初始化应用(Sonarr、Radarr、Prowlarr 等)
  • 通过 Cloudflare 实现动态 DNS 更新
  • 生成泛域名(Wildcard)SSL 证书
  • 支持多种网络共享
  • 通过 Authentik 实现单点登录(SSO)
  • 支持独立的 4K 版 Sonarr 与 Radarr 实例
  • 自动配置 Homepage 仪表盘
  • 提供自定义脚本:Uptime-Kuma 高级监控、Traefik 证书转 Plex 可用的 PKCS12 证书

组成与分工

  • Ansible:编排引擎,以 Playbook 形式自动化整个部署流程
  • Docker:容器运行时,承载所有媒体服务栈
  • Plex:媒体服务器容器,负责媒体播放
  • Sonarr / Radarr / Prowlarr:媒体自动化下载与管理服务,由 Playbook 自动初始化
  • Traefik:反向代理,提供泛域名 SSL 证书
  • Cloudflare:动态 DNS 更新
  • Authentik:单点登录服务
  • Uptime-Kuma:配合监控脚本检测 Plex 是否真正可访问媒体

前置要求

  • 使用 Nvidia GPU 时,Nvidia 驱动需自行安装(Playbook 不包含驱动安装,但会验证 GPU 加速是否可用)

使用与配置要点

  • 部署完成后可运行 Uptime-Kuma 高级监控脚本,检测媒体是否真正可被 Plex 容器访问
  • 可使用附带脚本将 Traefik 证书文件转换为 Plex 支持的 PKCS12 格式
  • 如需添加容器或提出改进,可通过项目的 Discussion 提交建议

注意事项与常见问题

  • Nvidia GPU 驱动不包含在 Playbook 中,需要用户自行安装,Playbook 只做验证
  • 该项目部分贡献由 AI 参与,但 95% 以上代码仍为人工编写

优缺点

  • ✓ 自动化安装与初始化
  • ✓ 支持 GPU 加速与 SSO
  • ✕ Nvidia 驱动需自行安装

出处

本方案挖掘自开源项目 ahembree/ansible-hms-docker,方案内容与实施命令均来自其 README 原文。

方案出处
ahembree/ansible-hms-docker:Ansible playbook for an orchestrated Home Media Server deployment
450 star Ansible playbook for an orchestrated Home Media Server deployment

本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。