type
status
date
slug
summary
tags
category
icon
password
😀
搭建它来存放我的电子书,统一管理,同时提供在线阅读服务,对接支持opds协议的客户端
 

📝 主旨内容

1、效果截图

notion image

3、公共信息

默认账户
  • sername: admin
  • Password: admin123
连接calibre-web的路径
calibre-web数据库

3、Docker部署

docker compose 部署
防火墙设置

4、calibre-web设置项

 

5、客户端对接calibre-web服务

calibre官方只提供了PC端的客户端,所以移动端要想使用calibre书源,那么可以浏览器访问calibre-web或是借助支持opds协议的阅读器。
  • opds是电子书分发协议,
  • opds主要用于提供电子书目录、书籍文件以及元数据的访问,通常是通过 Web服务 进行交互。
  • opds基于 Atom(一种 XML 格式的标准)和 HTTP 协议,允许用户通过支持 OPDS 的阅读器获取电子书资源。

5-1、PC端书库切换到web库

原理:将web端中存储书籍的库,借助SMB协议对外开放,然后Windows添加网络驱动,然后PC端就能将其作为一个本地磁盘目录来切换。

5-2、刮削

在网络上下载的图书,有的图书信息是不全的。可能缺少封面或者作者、出版社等其他信息。为了方便归纳、搜索,也为了在WEB界面可以展示漂亮的封面墙,我们需要刮削图书信息
  1. 可手动更改书籍元书籍
  1. 可对接douban插件,入下是该插件镜像

5-3、移动端对接calibre-web

静读天下
英文名Moon Reader,支持opds协议
notion image
FullReader
notion image
Fbreader
  • 跨平台ios、安卓、pc、mac都支持,且支持google drive同步
  • 默认不支持pdf,但提供了pdf阅读插件
阅读
英文名legado,使用它借助爬虫规则来实现
需要自写书源,但是网络上找到的是半成品,只能获取到书籍列表
  • 可借助legado自带的web服务,进入web端来添加书源
 

6、问题排查

DB Location is not Valid, Please Enter Correct Path

notion image
👉这是因为缺少metadata.db,它存储的目录被视为存储书籍的仓库,本案例中它存储在容器的/app/calibre/books
👉可以下载3、公共信息 中提供的metadata.db,使用docker cp命令拷贝到容器里;权限需要设置为666/777
👉也可进入容器,生成一个

attempt to write a readonly database

👉这是权限问题导致
👉检查PUID和PGID对应的用户是否有权限写metadata.db
👉检查metadata.db文件是否为666/777权限

🤗 总结归纳

  • calibre-web的部署需要注意metadata.db是否存在,以及权限是否666/777
  • PC客户端与web同步的关键是需要服务端将目录借助smb协议服务暴露出去
  • calibre本身不提供移动端阅读器,所以要移动端阅读,要么网络浏览;要么借助支持opds协议的阅读器;或是借助爬虫。

📎 参考文章

 
💡
有关Notion安装或者使用上的问题,欢迎您在底部评论区留言,一起交流~
docker镜像加速之cloudflare worker解决-在线视频离开页面就停止