Talebook - 一个简单好用的个人书库
Talebook 是一个基于 Calibre + Vue 构建的个人图书管理系统,支持网页在线阅读、多用户、OPDS、Kindle 推送、网络书源导入等功能,可通过 Docker 一键部署。
社区作者 · zZz
它解决什么问题
Talebook 是一个基于 Calibre 和 Vue 构建的简单好用的个人图书管理系统,支持网页在线阅读。界面基于 Nuxt 4 + Vue 3 + Vuetify 全新编写,支持 PC 与手机访问、中英文多语言、白天/夜间主题切换。
核心功能包括:多用户与访客权限控制(支持 QQ、微博、Github 等社交登录,密码 bcrypt 加密,图形验证码与极验人机验证);内置 candle-reader 阅读器,非 EPUB 格式自动转换;支持导入 Legado(开源阅读)风格书源,在线搜索阅读网络小说并可保存为 txt/epub 入库;支持批量扫描导入并自动填充元数据,提供回收站、批量删除;支持多设备 Kindle 邮件推送与批量格式转换;支持 OPDS 协议,可用 KyBooks 等 App 阅读,也可从其他 OPDS 书库导入;支持一键安装、网页初始化配置、在线检查更新;支持从百度百科、豆瓣、新华书店、番茄小说等多信息源并行搜索导入书籍元数据,还可接入 AI 大模型自动识别书籍信息;支持私人模式(访问码)与单本书私藏。
此外,项目还提供 AI Skills,可让支持 Agent Skills 的 AI 工具通过自然语言操作书库;并有全平台客户端 Moke 和社区安卓客户端 Talebook Android。注意:中国境内个人不允许在线出版,维护公开书籍网站违法违规,建议仅个人使用。
— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。
安装 / 开始使用
准备环境:安装 Docker 及 Docker Compose,并准备一个用于持久化数据的目录(默认在 docker-compose.yml 同目录的 data/ 中)。
方式一
Docker Compose 部署- 下载仓库中的 docker-compose.yml:
wget https://raw.githubusercontent.com/talebook/talebook/master/docker-compose.ymldocker-compose -f docker-compose.yml up -d
- 启动服务:
- 首次运行后,访问 http://<服务器IP>:80(默认端口可修改)进入网页初始化配置。
- 若需修改挂载目录或端口,请编辑 docker-compose.yml;如需改变数据目录,可在同目录的 .env 中设置绝对路径:
TALEBOOK_DATA_DIR=/path/to/talebook-data方式二:原生 Docker 部署
- 创建数据目录:
mkdir -p "$PWD/data"- 运行容器:
docker run -d --name talebook -p 8080:80 -v "$PWD/data:/data" talebook/talebook- 访问 http://localhost:8080 完成初始化。
数据持久化说明:默认配置会把 Talebook 的配置、用户数据库和书库统一保存在 docker-compose.yml 同目录的 data/ 中;重新构建或替换容器不会删除这些文件。请定期备份该目录,不要把长期数据放在可能被系统清理的 /tmp 下。如果旧部署仍使用 /tmp/demo,升级 Compose 前请先备份该目录,并设置 TALEBOOK_DATA_DIR=/tmp/demo 继续挂载原数据;也可以在停止容器后自行迁移到新的持久化目录。不要在未挂载原数据的情况下完成再次初始化。
附加:AI Skills(可选) Talebook 提供 Agent Skill,在支持 Agent Skills 的 AI 工具中全局安装:
npx skills add talebook/skills -g连接实例时建议通过环境变量提供站点和登录信息,避免密码进入命令历史:
export TALEBOOK_URL="https://books.example.com"export TALEBOOK_USERNAME="your-username"export TALEBOOK_PASSWORD="your-password"安装后直接用自然语言描述任务即可,例如:帮我在书库里找一下《三体》,把找到的那本加入收藏。在 Claude Code 中也可用 /talebook 显式调用。
常见问题:
- 网页打不开:检查端口映射是否与本机端口一致,防火墙是否放行。
- 找不到数据:确认 data 目录挂载正确,不要把数据放在 /tmp。
- 更多常见问题请参阅项目“使用指南”,开发者可参考“开发者指南”。
配图 2、配图 3 展示了项目界面与贡献者信息。