参考链接:
https://github.com/lyy289065406/calibre-docker
docker 一键部署 calibre 在线书库
你是否面临以下困扰:
其实只需要搭建一个私人书库,这些问题就迎刃而解了:
本仓库包含三个 docker 镜像:
| 镜像 | 用途 | 服务端口 | 端口说明 |
|---|---|---|---|
| calibre | calibre 后端 | 8080 | calibre 管理页面 |
| calibre-web | calibre 前端 | 8083 | CMS 页面,同时提供 OPDS 服务 |
| nginx | 反向代理 calibre 服务 | 80 | 项目说明页面 |
calibre-docker
├── books ....................... [缓存目录:导入电子书到 calibre 时,仅可以选择在该目录下的电子书]
├── data ........................ [存档目录:calibre 的数据库(包括电子书本身),用于数据迁移]
├── calibre
│ ├── cms
│ │ └── Dockerfile .......... [calibre 前端镜像构建脚本]
│ └── mgr
│ └── Dockerfile .......... [calibre 后端镜像构建脚本]
├── nginx
│ ├── etc
│ │ └── calibre_site.conf ... [代理服务配置]
│ └── html .................... [代理服务主页]
├── index.html .................. [Github Paget:自动跳转到代理服务主页]
├── docker-compose.yml .......... [calibre 镜像构建脚本]
├── run.sh ...................... [calibre 服务一键启动脚本]
├── stop.sh ..................... [calibre 服务一键停止脚本]
├── imgs ........................ [README 插图目录]
└── README.md ................... [本仓库说明文档]
git clone -b main --single-branch https://github.com/lyy289065406/calibre-docker /usr/local/calibre-docker (只下载 main 主分支即可)cd /usr/local/calibre-docker./run.sh -u admin -p admin123 (完全启动约需要 2 分钟,书库越大启动越慢)构建时设置的是 calibre 后端管理页面的账密,calibre-web 前端账密只能在 CMS 上修改。
http://${vps-ip}/mgr/(或 http://${vps-ip}:8080)admin / admin123/config/Calibre Library,该路径用于存储 calibre 的配置库,默认挂载到宿主机的 data 目录)先把电子书上传到宿主机的 books 目录,然后登录后台管理页面,点击【Add books】,在【/books】目录找到所上传的电子书,点击【Open】即可导入到 calibre 数据库。
可以把个人电子书存储到另一个 Repo(如 ebooks-library),使用时再通过 git clone 拉取到
books目录
http://${vps-ip}/cms/(或 http://${vps-ip}:8083)admin / admin123/config/Calibre Library点击右上角的 【admin】 即可修改用户密码
默认情况下 admin 用户是无法在线阅读电子书的,需要先授权阅读权限:
点击右上角的【管理权限】,编辑【admin】用户,勾选【允许在线阅读】即可。
之后点击任意一本电子书,会多出一个【在线阅读】按钮:
calibre-web 提供了 OPDS 协议的服务地址:http://${vps-ip}/cms/opds/(或 http://${vps-ip}:8083/opds/)。
换言之所有支持 OPDS 协议的 APP 都可以对接到 calibre-web 获取书库中的电子书,例如这些 APP :
| APP | 适用设备/系统 | 说明 |
|---|---|---|
| FullReader | Android | 界面清新但是有广告,而且汉化不完全,有少量韩文 |
| AIReader | Android | 没有广告但是外观不好看 |
| kybook3 | iOS | 目前已知 iOS 唯一支持 OPDS 的 APP |
| kindle | kindle | 仅在 kindle 设备上支持 OPDS,在 Android/iOS 上不支持 |
以 FullReader 为例:点击【网络图书馆】->【添加OPDS目录】,填写 calibre 的 OPDS 服务地址和 BasicAuth 账号密码即可。
理论上 data 目录挂载了 calibre 运行所需的全部数据(包括电子书本身),只要完整迁移到任何设备就可以直接运行。
但若 calibre 非正常停止过,就会导致 calibre-web (即 CMS 服务)无法运行。
解决方法也很简单:
stop.sh 脚本停止 calibre 服务data/.config/calibre/gui.json 的 library_usage_stats 状态值是否为 1,若不是则修改为 1run.sh 脚本重新启动 calibre 服务,此时 CMS 服务应该可以正常启动了本仓库包含 main 和 produce 两个分支,其中:
因此 produce 分支是不需要下载的,只下载 main 主分支即可:
git clone -b main --single-branch https://github.com/lyy289065406/calibre-docker