用 Legejo 把书库和进度搬进一个容器,读到哪都能接着读
简介
什么是 Legejo ?
Legejo是一个自托管的电子书库,用Rust和SvelteKit写成,内置SQLite,一个容器就能跑起来。把EPUB上传进去、放进书架,可以在浏览器、Kobo、KOReader或任意OPDS阅读App里接着读,阅读进度会跟着你跨设备同步。
主要特点
- 以 EPUB 为核心:上传时每本
EPUB都会做检查并自动修复,元数据从文件读取或从Open Library、Libris补全,再写回EPUB文件。支持系列、标签、评分、全文检索和重复检测。 - 内置 Web 阅读器:主题、字体、页边距可调,支持高亮、笔记、书内搜索、
Wiktionary查词和朗读。PDF和CBZ漫画也能在浏览器里打开,安装成PWA后可离线阅读。 - 阅读器同步:原生支持
Kobo同步(书籍、书架、进度、高亮)、KOReader同步服务、OPDS 1.2以及Send to Kindle。 - 书架分享:可分享给本实例的其他用户,通过私有链接分享给另一个
Legejo实例或阅读App,免费书籍还能通过ActivityPub联邦到Mastodon等fediverse平台。 - 词汇分析:统计每本书的高频词、人名地名和特征词,给出难度对比;世界语书籍还能按词频生成学习清单、附带英文释义并导出到
Anki。 - 可选能力按需开启:有声书会变成私有播客源,交给已有的播客
App播放;可接入Project Gutenberg等外部OPDS目录一键取书;AI部分默认关闭,提供只读MCP端点和书架推荐「图书管理员」。 - 多用户与账号体系:支持邀请注册、
OpenID Connect单点登录、完整数据导出,界面提供英语、瑞典语、挪威语、芬兰语、德语、法语、西班牙语和世界语共 8 种语言。 - 单容器轻量部署:一个进程同时提供
API和静态前端,SQLite内置,空闲内存约30 MB;需要时也可换PostgreSQL,或把书籍文件放到S3 / Cloudflare R2。 - 开源免费:基于
AGPL-3.0协议开源,无付费层、无广告、无遥测。
应用场景
- 个人电子书库:把散落在各处的
EPUB集中管理,用标签、系列、书架整理,上传时顺带修好有问题的EPUB。 - 多设备续读:电脑浏览器读到一半,出门用手机
PWA或Kobo继续,进度、高亮和笔记双向同步。 - 家庭 / 小团体共用:开多个账号,把书架分享给家人或朋友,也可以用私有链接分享给使用其他
Legejo实例的人。 - OPDS 阅读器接入:把
Legejo作为OPDS目录挂到任意支持OPDS的阅读App上,统一供书。 - 有声书收听:把一个音频文件夹变成私有播客订阅源,在常用的播客
App里听,进度也能保留。 - 语言学习:利用词频统计和难度对比挑适合自己水平的外语原版书,世界语学习者还能直接导出
Anki词表。 - 开发者测试:单容器、无外部依赖,适合快速起一个实例验证
OPDS、Kobo同步或ActivityPub联邦行为。

Legejo 是一个把「藏书、阅读、跨设备同步、分享」收进一个轻量容器里的自托管电子书库。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 slurvdjur/legejo,选择第一个 slurvdjur/legejo,版本选择 latest。
本文写作时,最新发布版本
latest为v1.47.2(2026-11-11),镜像同时提供linux/amd64和linux/arm64架构。

卷
在 docker 文件夹中,创建一个新文件夹 legejo,并在其中建一个子文件夹 data
| 文件夹 | 装载路径 | 说明 |
|---|---|---|
docker/legejo/data |
/data |
存放书籍文件、封面和 SQLite 数据库 legejo.db |

端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 | # 查看端口占用 |
| 本地端口 | 容器端口 |
|---|---|
3795 |
3000 |

环境
| 可变 | 值 |
|---|---|
LEGEJO_PUBLIC_URL |
最终对外访问地址,如 http://192.168.0.197:3795 |
LEGEJO_ADMIN_PASSWORD |
自定义管理员密码 |
LEGEJO_ADMIN_USER |
admin(可选,默认 admin) |

环境变量说明:本项目的环境变量全部可选,不填任何变量也能正常运行;邮件、公开地址、全文检索、有声书和图书管理员都能在
Admin页面里配置。但LEGEJO_PUBLIC_URL关系到Kobo同步、邮件里的链接和ActivityPub联邦,建议一开始就填对;LEGEJO_ADMIN_PASSWORD只在数据库为空时生效,用来在启动时直接创建管理员。环境变量优先级高于 Admin 页面,用变量设置的项目在页面上不可修改。更多可选变量:
LEGEJO_SECURE_COOKIES(纯HTTP下设为false)、LEGEJO_CLIENT_IP_HEADER(反代后设为X-Forwarded-For)、LEGEJO_MAX_UPLOAD_MB(默认200)、LEGEJO_FULLTEXT、LEGEJO_MCP、LEGEJO_SMTP_HOST等,完整列表见官方配置文档。
命令行安装
docker cli 安装
如果你熟悉命令行,可能用 docker cli 更快捷
1 | # 新建文件夹 legejo 和 子目录 |
请把
192.168.0.197换成你的群晖IP、把laosu123换成自己的强密码。
docker-compose 安装
也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
1 | services: |
然后通过 SSH 登录到您的群晖,执行下面的命令:
1 | # 新建文件夹 legejo 和 子目录 |

新版
Docker可以用docker compose up -d。如果书库规模较大、想换PostgreSQL,官方还提供了docker-compose.postgres.yml(多一个postgres:17-alpine服务),并附带import-sqlite工具迁移已有SQLite数据;那属于多容器部署,需要单独配置。
运行
在浏览器中访问 http://<群晖IP>:3795 即可进入登录界面

登录成功后的主界面

首次使用需要:
- 创建管理员账号。第一个访问新实例的访客会成为管理员,所以如果实例能被公网访问,请立刻完成注册,或提前设置
LEGEJO_ADMIN_PASSWORD让账号在启动时就建好。 - 用管理员登录,进入
Admin页面补全公开地址、邮件(自助注册 / 邀请 / 密码重置)、全文检索、有声书等开关;页面上的设置会先「测试」再保存。 - 上传
EPUB书籍。新实例自带一本《The Legejo Cookbook》用户手册,可以直接在库里读,也可以下载EPUB。

- 按需接入客户端:
Kobo同步、KOReader同步服务、OPDS目录地址,或把PWA添加到手机主屏离线阅读。
如果前面反代终止了 TLS,务必把 LEGEJO_PUBLIC_URL 设为最终的 https:// 地址,否则 Kobo 同步、邮件链接和联邦功能都会用错地址。
注意事项
- 管理员抢注风险:未设置
LEGEJO_ADMIN_PASSWORD时,第一个打开页面的人就是管理员。公网部署务必先设密码再启动,或启动后立刻注册。 - 公开地址与反代:
LEGEJO_PUBLIC_URL必须与实际外网地址一致;反代环境下再设置LEGEJO_CLIENT_IP_HEADER=X-Forwarded-For,登录限流才能按真实客户端 IP 生效。经过 Cloudflare 时改用CF-Connecting-IP。 - 纯 HTTP 登录掉线:若出现登录后立刻掉线,可设置
LEGEJO_SECURE_COOKIES=false;正式使用仍建议HTTPS。 - 数据备份:
/data里同时放着书、封面、缩略图、KEPUB副本和SQLite数据库,备份这一个目录即可(也可用账号页的完整导出)。使用S3/R2后数据库仍在/data,别把卷删了。 - 格式边界:
EPUB才是一等公民;PDF和CBZ主要作为同库文件分发,不支持CBR或webtoon模式;有声书靠播客App播放,Legejo本身不是播放器;项目不读取你已有的书目录,而是自己保存一份副本以便修复和写回修改。 - 界面暂无中文:目前只有英、瑞典、挪威、芬兰、德、法、西和世界语
8种语言,介意的话先试用再决定。 - 上传体积:单个文件默认上限
LEGEJO_MAX_UPLOAD_MB=200,导入大部头或有声书前可按需调大;反代也要相应放开client_max_body_size。 - 端口冲突:
3000常被其他容器占用,启动前用netstat -tunlp | grep 3000确认,或改用其他本地端口。 - 安全建议:不要直接把
3000暴露到公网,套一层带HTTPS的反向代理;AI图书管理员和MCP端点默认关闭,开启前确认密钥与访问范围;项目较新(2026-10 创建),升级前先看Changelog。
参考文档
jularboolean/legejo: A self-hosted e-book library with OPDS, Kobo sync, KOReader sync and ActivityPub federation
地址:https://github.com/jularboolean/legejoslurvdjur/legejo - Docker Image | Docker Hub
地址:https://hub.docker.com/r/slurvdjur/legejoLegejo – a self-hosted library for your e-books(项目官网)
地址:https://legejo.seConfiguring Legejo(官方配置文档,含全部环境变量)
地址:https://github.com/jularboolean/legejo/blob/main/docs/configuration.mdDeploy Legejo on Dokploy(第三方部署模板)
地址:https://dokploy.com/templates/legejoLegejo | TrueNAS Community Apps(社区应用模板)
地址:https://apps.truenas.com/catalog/legejo_community