开源多用户图书追踪系统LibrisLog
简介
什么是 LibrisLog ?
LibrisLog是一个开源的多用户图书追踪Web应用。它可以帮助你管理阅读清单、追踪阅读进度、获取丰富的阅读统计数据,所有数据都存储在你自己的服务器上。
主要特点
- 完全自托管:基于
MIT协议开源,无广告、无追踪、无厂商锁定,数据完全由你掌控 - 无需 API 密钥:开箱即用支持
Open Library,可选添加Google Books或Hardcover.app获取更丰富的搜索结果 - 丰富的阅读洞察:日历热力图、语言/状态/页数分布图表、每月/每年完成书籍数、热门作者等统计一应俱全
- 多用户支持:内置管理员/普通用户角色,支持可选的
OIDC单点登录,每个用户拥有独立的书库 - 灵活的数据导入:支持
Goodreads CSV自动字段映射、通用CSV自定义转换、JSON、带封面的ZIP格式 - ISBN 扫码:手机浏览器实时扫描
ISBN条形码,无需安装原生应用 - 多来源封面获取:自动从
AbeBooks、Open Library、Amazon、Hardcover搜索封面,支持手动上传或URL粘贴 - 完整 REST API:
OpenAPI文档化的后端接口,可脚本化调用,构建自己的前端或连接智能家居 - 轻量级架构:仅需两个
Docker容器和一个SQLite数据库 - 双语界面:支持英语和德语,本地化框架易于扩展更多语言
应用场景
- 个人图书馆管理:管理你的阅读清单,追踪阅读进度,记录想读、在读、已读的书籍
- 家庭共享书库:一个实例供全家使用,每个成员拥有独立的书库空间
- 读书会管理:小型读书会可以统一管理书籍资源和成员阅读进度
- 阅读数据分析:通过统计图表了解自己的阅读习惯和偏好
- 数据备份迁移:支持
JSON、CSV、ZIP格式导出,随时备份和迁移数据

LibrisLog 是一个功能完整的自托管图书追踪系统,让你完全掌控自己的阅读数据。
安装
在群晖上以 Docker 方式安装。
提示:
LibrisLog在低版本群晖系统上,例如DSM 6.1.7上会一直报错,但是DSM 6.2.3上没问题。估计和之前的AH00141错误是一样的
1 | librislog-api | RNDGETENTCNT on /dev/urandom indicates that the entropy pool does not have enough entropy. Rather than continue with poor entropy, this process will block until entropy is available. |
提示:由于镜像托管在
ghcr.io,群晖Docker套件无法直接搜索,需要通过命令行或docker-compose部署
env.txt
创建环境变量文件 env.txt:
1 | # 后端设置 |
提示:记得采用
UTF-8格式保存
如果不知道怎么设,可以只修改 API_KEY_ENCRYPTION_KEY

值可以用命令 openssl rand -base64 32 生成

docker-compose 安装
采用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
1 | services: |
提示:记得采用
UTF-8格式保存
然后通过 SSH 登录到您的群晖,执行下面的命令:
1 | # 新建文件夹 librislog 和子目录 |

运行
在浏览器中访问 http://<群晖IP>:8311 即可进入注册界面

需要设置管理员用户名和密码
虽然支持多语言,但是目前只有英文和德文

登录后即可开始添加书籍

进入 Library –> Add you first book

默认是手动添加,建议使用 Search & Import

搜索标题,然在结果中直接添加

随便加了几本

注意事项
- API_KEY_ENCRYPTION_KEY:这是必须修改的配置项,用于加密 API 密钥,请使用
openssl rand -base64 32生成随机值 - 数据持久化:书籍数据存储在
./data目录,建议定期备份该目录 - 端口冲突:默认使用
8310和8311端口,如需修改请调整docker-compose.yml中的端口映射 - 生产环境:建议将
AUTH_COOKIE_SECURE设为true,并配置反向代理启用HTTPS - OIDC 登录:如需使用单点登录,需先在管理界面配置
OIDC提供商信息
参考文档
codebude/librislog: Multi-user book tracking webapp
地址:https://github.com/codebude/librislogLibrisLog 完整文档
地址:https://codebude.github.io/librislog/LibrisLog 快速入门指南
地址:https://codebude.github.io/librislog/guide/getting-started