平时收集的电子书越来越多,格式也越来越杂:EPUB、PDF、漫画、有声书散落在不同文件夹里。想在电脑、手机和阅读器之间切换,还会遇到阅读进度不同步、书籍信息不完整、标注难以统一管理等问题。
BookOrbit 是一个开源、自托管的数字图书馆与阅读平台。它不仅能集中管理电子书,还内置了网页阅读器、元数据匹配、阅读进度同步和多用户管理等功能。
项目介绍
BookOrbit 是一款可以部署在个人服务器或 NAS 上的数字书库系统,支持统一管理和阅读多种类型的内容,包括:
- • EPUB、KEPUB、MOBI、AZW3 等电子书
与普通的书籍管理工具相比,BookOrbit 不只是负责展示封面和整理文件。它内置了网页阅读器,可以直接在浏览器中阅读电子书、PDF 和漫画,也可以播放有声书。
BookOrbit 还支持 Kobo、KOReader 和网页阅读器之间的阅读数据同步。你可以在电脑上读一部分,再拿起阅读器继续,阅读进度、书签和标注都能保持一致。
所有书籍文件和阅读数据均保存在自己的设备上,不需要上传到第三方平台。
项目地址:https://github.com/bookorbit/bookorbit
官方网站:https://bookorbit.app
项目特征
安装指南
BookOrbit 官方推荐使用 Docker Compose 部署,适合安装在 NAS、家庭服务器或云服务器上。
部署前需要准备:
- • 已安装 Docker 和 Docker Compose
创建项目目录
登录服务器后执行:
mkdir bookorbit
cd bookorbit
mkdir -p books data/app data/postgres
接着下载环境变量模板和 Docker Compose 配置:
curl -fsSLo .env https://raw.githubusercontent.com/bookorbit/bookorbit/main/.env.example
curl -fsSLo docker-compose.yml https://raw.githubusercontent.com/bookorbit/bookorbit/main/docker-compose.yml
修改环境变量
打开 .env 文件,至少需要配置以下内容:
APP_URL=http://你的服务器IP:3000
BOOKS_HOST_PATH=./books
POSTGRES_PASSWORD=数据库密码
JWT_SECRET=JWT密钥
SETUP_BOOTSTRAP_TOKEN=初始化令牌
其中:
- •
APP_URL 是 BookOrbit 的访问地址 - •
BOOKS_HOST_PATH 是服务器上的书籍目录 - •
POSTGRES_PASSWORD 是数据库密码 - •
SETUP_BOOTSTRAP_TOKEN 用于首次初始化系统
启动服务
配置完成后执行:
docker compose up -d
等待容器启动,然后在浏览器中访问:
http://你的服务器IP:3000
首次进入时,使用 .env 中设置的 SETUP_BOOTSTRAP_TOKEN 完成初始化。
初始化完成后,就可以创建书库、选择书籍目录并开始扫描文件。
如果需要通过公网访问,建议额外配置域名、HTTPS 和反向代理,并做好访问权限控制。
总结
BookOrbit 并不是一个单纯展示电子书封面的书库面板,而是一套相对完整的自托管阅读方案。
它把书籍管理、网页阅读、跨设备进度同步、标注整理、阅读统计和多用户功能整合到了一个项目里,同时支持电子书、PDF、漫画和有声书。
它比较适合以下用户:
- • 同时使用 Kobo、KOReader 和网页端阅读
如果你只需要简单整理几本电子书,BookOrbit 的功能可能显得有些多。但如果你已经拥有一定规模的数字书库,又希望获得类似在线阅读平台的使用体验,那么 BookOrbit 值得尝试。
把书放进自己的服务器,阅读入口、进度和数据也都掌握在自己手中。这大概就是自托管私人图书馆最吸引人的地方。