
有声书太多不好管理?一个项目搭建私人听书平台:c
Audiobookshelf 并不是一个简单的网页音频播放器,而是一套围绕有声书和播客打造的自托管媒体平台。
![]()
喜欢听有声书的人,硬盘里往往不只有几本书。
随着收藏越来越多,MP3、M4B 和各种分章节音频散落在不同文件夹里,想找一本书要翻半天,换台设备后还得重新确认上次听到哪里。
播客也有类似的问题。有些节目下架后就很难再找到,想把喜欢的单集长期保存,又缺少一套方便的整理和播放工具。
如果你手上有一台 NAS,可以试试 Audiobookshelf。它能把本地有声书和播客整理成一个属于自己的私人听书平台。
项目介绍
Audiobookshelf 是一款开源、自托管的有声书和播客媒体服务器。
简单来说,可以把它理解成有声书领域的 Plex。把音频文件放进 NAS,再添加到 Audiobookshelf 的媒体库中,系统就会通过网页界面展示书籍封面、作者、简介、章节和播放进度。
部署完成后,可以直接在浏览器中播放,也可以使用 Android 和 iOS 客户端连接自己的服务器。阅读进度保存在自己的设备上,并能在多个终端之间同步。
除了有声书,Audiobookshelf 还可以搜索、订阅和下载播客。喜欢的节目可以保存在自己的服务器中,不必完全依赖第三方播客平台。
Audiobookshelf 本身不提供有声书资源,音频文件仍需要由用户自行准备。它负责的是整理、播放、进度同步和用户管理。
项目官网:https://audiobookshelf.org
项目地址:https://github.com/advplyr/audiobookshelf
项目特征
-
集中管理有声书
-
自动匹配元数据和封面
-
网页端直接播放
-
跨设备同步进度
-
Android 与 iOS 客户端
-
播客订阅与自动下载
-
多用户与权限管理
-
章节编辑器
-
自动备份
-
RSS 输出
-
基础电子书支持
安装指南
Audiobookshelf 支持 Docker、Podman、Linux 和 Windows 等多种安装方式。官方推荐使用 Docker,NAS 用户也更适合通过 Docker Compose 部署。
下面以 Docker Compose 为例。
创建项目目录
先在服务器上创建配置、元数据、有声书和播客目录:
各目录的用途如下:
config:保存 SQLite 数据库和数据库迁移文件metadata:保存书籍元数据、封面、作者图片、日志和备份audiobooks:存放有声书文件podcasts:存放下载的播客节目
如果 NAS 上已经有有声书目录,可以直接映射原有路径,不需要移动文件。
创建 Docker Compose 配置
在 audiobookshelf 目录中创建 compose.yaml 文件,并写入以下内容:
如果媒体文件保存在 NAS 的其他位置,可以修改冒号左侧的路径。例如:
冒号左侧是 NAS 上的实际路径,右侧是容器内部使用的路径。
每个挂载点应该是相互独立的目录,不要把一个挂载目录包含在另一个挂载目录中。
注意配置目录的位置
/config 中保存着 Audiobookshelf 使用的 SQLite 数据库,必须放在运行服务的同一台设备上。
不要通过 NFS、SMB 或其他网络共享方式,把 /config 放在另一台 NAS 上。即使初期看起来可以运行,长期使用也可能出现性能问题和数据库损坏。
有声书等媒体文件可以根据实际情况存放在其他位置,但配置数据库应使用本地存储。
设置运行用户
Audiobookshelf 不使用 PUID 和 PGID 环境变量。
如果需要让容器以指定用户运行,可以在 Compose 文件中增加:
可以使用下面的命令查询用户 ID 和用户组 ID:
随后确保对应用户有权读取有声书目录,并且可以写入 config、metadata 和 podcasts 目录。
启动服务
配置完成后执行:
等待容器启动,然后在浏览器中访问:
首次打开时,根据页面提示创建管理员账号。登录后创建有声书或播客媒体库,并选择容器中的 /audiobooks 或 /podcasts 目录。
扫描完成后,就可以开始匹配元数据和播放内容。
查看运行日志
如果网页无法打开,或者扫描媒体时出现问题,可以查看容器日志:
常见问题一般与目录权限、路径映射或端口占用有关。
更新 Audiobookshelf
使用 Docker Compose 部署时,可以通过以下命令更新:
只要 config、metadata 和媒体目录已经正确映射到宿主机,重新创建容器不会删除原有数据。
更新前仍然建议先备份 config 和 metadata 目录,尤其是跨越多个版本升级时。
公网访问建议
如果只在家中使用,直接通过局域网 IP 访问即可。
如果需要在外面连接服务器,建议配置域名、HTTPS 和反向代理,或者使用可信的虚拟局域网方案。不要直接把没有保护的管理端口暴露到公网,同时为管理员账号设置强密码。
总结
Audiobookshelf 并不是一个简单的网页音频播放器,而是一套围绕有声书和播客打造的自托管媒体平台。
它把书库整理、元数据匹配、网页播放、跨设备进度同步、离线收听、播客下载和多用户管理放在了一起。对于已经在 NAS 中保存大量有声书的用户来说,使用体验会比直接翻文件夹完整得多。
Audiobookshelf 比较适合以下用户:
- NAS 中保存了大量有声书或广播剧
- 希望在电脑和手机之间同步播放进度
- 想把喜欢的播客节目下载并长期保存
- 需要和家人共享内容,但保留独立收听记录
- 希望自动整理封面、作者和章节信息
- 不想把自己的收听数据完全交给第三方平台
当然,Audiobookshelf 不能解决音频资源本身的问题,书库的文件命名和目录结构也会影响识别效果。第一次导入大量内容时,通常还需要花一些时间整理元数据。
但整理完成后,无论是在家里的电脑上,还是拿着手机出门,都能打开自己的书库,从上次暂停的位置继续听。
把有声书和播客放回自己的服务器,内容、进度和数据都由自己掌握,这就是 Audiobookshelf 最吸引人的地方。


