Calibre-Web 可以称作一个私人的电子书库,支持图书信息的编辑、阅读、下载、并发送到 Kindle 等操作。
首先,服务是基于 docker 容器来构建的,部署在腾讯云上并且使用了 docker_mods。这里有一个很重要的问题就是腾讯云下载 docker_mods 中的软件包特别慢(根据文档描述猜测是 docker_mods 是在容器启动时,从 github.com 上下载软件包安装,腾讯云访问 github.com 比较慢),导致容器始终无法正常启动,这个是需要耐心等待的(我是干脆睡了一觉)。
文章主要参阅:Docker - Calibre-web Container Setup with New Calibre Database
安装
拉取镜像:
docker pull linuxserver/calibre-web
创建容器的数据目录(主要目的是为了维护服务,方便服务的迁移,防止容器因再此创建导致数据旧丢),在用户目录(可以保证有足够的权限)下创建 docker
文件夹,接下数据创建数据目录:
cd ~
mkdir -p docker/calibreweb/{books,config}
接下来创建并启动容器:
cd ~/docker
IDu=$(id -u) # 获取用户的 ID
IDg=$(id -g) # 获取用户的组 ID
docker run -d \
--name=calibreweb \
--hostname=calibreweb \
-p 8083:8083 \
-e PUID=$IDu \
-e PGID=$IDg \
-e TZ=Asia/Shanghai \
-e DOCKER_MODS=linuxserver/calibre-web:calibre \
-v $PWD/config:/config \
-v $PWD/books:/books \
--restart unless-stopped \
linuxserver/calibre-web
- IDu 和 IDg - 获取当前用户的信息,做这一步的目的为了解决容器卷目录不可写问题。
- -e DOCKER_MODS=linuxserver/calibre-web:calibre - 这一步是可选的主要目的是为创建数据库和转换图书格式用的,如果已经有现成的数据库,也不需要转换图书格式,可以去掉这个选项。
创建数据库
容器正常启动后,我们要进行的容器内部,使用 calibredb
命令来创建数据库文件。
首先,进行到容器内部:
docker exec -it calibreweb sh
接下来创建数据库
calibredb restore_database --really-do-it --with-library /books # 创建数据库
chmod a+w /books/metadata.db # 添加写权限exit
界面配置
在浏览器中访问 http://<IP DOCKER HOST>:8083/books
使用默认帐号名 admin
和密码 admin123
登录系统。
在右上角的导航栏中,有个人设置(通过点击用户名进行)、Admin(管理权限)和 Tasks(任务列表)。
点击 Admin 进入系统配置界面,再选择 Configuration 配置栏中的 Edit Basic Configuration(编辑基本配置),进入 Basic Configuration(基本配置)页面,进行以下设置:
- 在 Feature Configuration(功能配置)中勾选 Enable Uploads (Please ensure users having also upload right) (启用上传)。
在 External binaries()中,配置 Calibre E-Book Converter 和 Kepubify E-Book Converter:
- Path to Calibre E-Book Converter(Calibre 电子书转换器路径)中输入
/usr/bin/ebook-convert
- Path to Kepubify E-Book Converter(KEpubify 电子书转换器路径)中输入
/usr/bin/kepubify
- Path to Calibre E-Book Converter(Calibre 电子书转换器路径)中输入
基本配置
其它配置,可以点击用户名,进行个人配置项。例如:
- 选择 Language(语言)可切换界面展示的语言。
- 编辑 Send to Kindle E-mail Address (发送到 Kndle 的电子邮箱),如果你有 Kindle 的话,可以填写邮箱,用于接收电子书。不过这里还需要在管理面板中配置 E-mail Server Settings (邮件服务设置),才能发出邮件。
其余配置可根据自身需要配置。
本文由 waynelone 创作,采用 知识共享署名4.0 国际许可协议进行许可。
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。