经测试,pdf支持在线阅读,也就是网页打开,而且也可以记住阅读进度,doc文档不可以在线阅读,只有下载功能,其他暂未测试。
!!!请注意,阅读进度是生存在浏览器缓存的,也就是说换一个浏览器大概换一个设备,就无法同步了。目前几个比较多人用的类似的电子书架,几乎都基于Calibre改的,因此几乎都不支持跨设备同步阅读进度,若要同步,一般是基于WebDev实现。
一.Calibre-Web是什么
Calibre-Web 是 Calibre 的 Web 实现,支持网页管理册本、下载册本、在线阅读等功能,Calibre是一个电子书书管理工具。简单说,Calibre-Web是一个网页版电子书架。
二.Calibre-Web如何用Docker搭建
1. 测试情况
系统:Centos 7
架构:x86_64
Docker版本:26.1.4(当前最新版本)
利用VMWare测试。
2. 搭建步骤
2.1 前置步骤
要求Docker已经安装好。
2.2 搭建Calibre-Web
2.2.1 创建目录
Calibre-Web必要创建两个目录用于Docker映射。我创建的:
- mkdir /data/calibre-web/config
- mkdir /data/calibre-web/books
复制代码 其中,config用于存放Calibre-Web的设置文件,books用于存放册本。这里的目录路径和目录名是可以随意的,但是发起利用有意义的命名,用于背面做映射用。
2.2.2 Docker拉取镜像
Calibre-Web项目存在GitHub上,在国内不太好拉取。它有三四个版本的Docker镜像,其中有一个已经制止维护很久了,但是利用的人还是不少的。这几个版本略有差异,但不会太大,我这里用的是johngong版本的一个国内可用镜像。
Docker镜像地址:
https://docker.aityp.com/image/docker.io/johngong/calibre-web:0.6.22-7.9.0
Docker镜像拉取:
- docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/johngong/calibre-web:0.6.22-7.9.0
- docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/johngong/calibre-web:0.6.22-7.9.0 docker.io/johngong/calibre-web:0.6.22-7.9.0
复制代码 2.2.3 启动Docker镜像
实行以下命令即可,注意更换参数
- docker run -d \
- --name=calibre-web \
- -e PUID=1000 \
- -e PGID=1000 \
- -e TZ=Asia/Shanghai \
- -p 8083:8083 \
- -v /data/calibre-web/books:/library \
- -v /data/calibre-web/config:/config \
- -e DOCKER_MODS=linuxserver/calibre-web:calibre \
- -e CALIBRE_SERVER_WEB_LANGUAGE=zh_CN \
- --restart unless-stopped \
- johngong/calibre-web:0.6.22-7.9.0
复制代码 参数含义如下:
- -d: 后台运行容器。
- --name=calibre-web: 指定容器的名称,可以按喜好更改。
- -e PUID=1000: 指定运行 Calibre-Web 的用户 ID,可以不用更改。
- -e PGID=1000: 指定运行 Calibre-Web 的用户组 ID,可以不用更改。
- -e TZ=Asia/Shanghai: 设置容器的时区。
- -p 8083:8083: 将容器的 8083 端口映射到主机的 8083 端口,不发起更改,除非主机端口被占用。
- -v /data/carlibre-web/books:/library: 将本地电子书库目录挂载到容器内的 /books 目录,冒号前的路径就是在第一步时创建的books的目录,记得改为你本身的目录,背面上传到Calibre-Web的册本会被生存到这里。很多别的文章这里会写:-v /data/calibre-web/books:/books,这样子固然看起来更统一,但是在这个镜像下,我测试了下,假如这么写,会因为镜像自身的设置导致出问题(背面说明),发起把容器内的目录直接映射到library,这是镜像自身的目录。
- -v /data/calibre-web/config:/config: 将本地设置目录挂载到容器内的 /config 目录,冒号前的路径就是第一步创建的config目录,启动Calibre-Web的容器后,设置信息会生存到这里,注意改为你本身的目录。
- --restart unless-stopped: 容器在退出时主动重启。
- johngong/calibre-web:0.6.22-7.9.0: 这里是第二步下下来的镜像名称和Tag,Tag可以通过命令:查看,实行这个命令,输出的信息中有Tag一列,记得要加Tag,不然会Docker会去拉最新版本,网络欠好就拉不下来了。
至此,Calibre-Web摆设完毕。
2.2.4 利用Calibre-Web
打开浏览器,访问:ip:8083即可,初始账密:admin/admin123。假如前面操作都一样,一般这里是没有问题的。只是必要进行一些必要设置。
设置册本信息数据库位置
开启上传图书功能
设置完成后,革新一下,右上角就有“上传册本”按钮了,这个功能默认是没有开启的。
3. 其他问题
Q:界面不是中文?
A:假如用的是同一个镜像的话,一般就是中文了。不然尝试下看看启动Docker时设置的时区不是上海会不会影响。在Calibre-Web内部暂时未找到关于语言的设置。
Q:提示必要上传metadata.db?
A:这个文件是Calibre用于存储册本信息的数据库文件。假如操作步骤都跟前面的说明一样的话,一般是不会有这个问题的。假如问题还存在,可以重装试试,还是不可的话可以百度一下解决办法,这个问题很多人都有,解决方法其实也很简单,就是下载Calibre的客户端,拿出它的metadata.db,上传到你摆设的服务器上的主机的books目录下就行了。
Q:上传图书就出现500报错,看日志出现:permission denial?
A:这个就是前面说的,在Docker映射的时间,没有映射到容器内部的library上。发起是按照前面的步骤来。假如非要映射到容器内的其他目录,必要进入容器中,在里面将metadata.db移动大概复制到其他目录。但我不知道这会不会出现别的问题,不发起这么做。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |