前期准备工作
本地电脑安装Calibre, windows|Mac|Linux各种版本都有,建立本地的书库目录books用于存放电子书及metadata数据库,我这里用的是windows;
在windows是安装好与服务器连接的软件Xshell和用于传输文件的Sftp,或是其它同样功能的软件也可以
准备好服务器,我这里是选用的centos7,有NAS的也一样可以下载docker进行部署
搭建calibre-web应用
首先通过
docker -v检查是否安装了docker, 如果未安装通过以下命令安装:curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun是否需要使用Aliyun镜像看个人情况。
使用docker命令从github拉取calibre-web应用,github上下载量较高有以下3个:linuxserver/calibre-web,technosoft2000/calibre-web,janeczku/calibre-web, 我用的是第1个,有不少同学说linuxserver/calibre-web不能进行格式转换,但通过正常配置是可以正常转换格式的;
docker pull linuxserver/calibre-web拉取应用,
如果报错Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 说明docker应用进程没有正常启动 ,需要先手动启动systemctl restart docker.service,再拉取应用。
在docker中创建calibre-web应用:
docker create \ --name=calibre-web \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Asia/Shanghai \ -p 8083:8083 \ -e DOCKER_MODS=linuxserver/calibre-web:calibre \ -v /data/calibre/config:/config \ -v /data/calibre/books:/books \ --restart unless-stopped \ linuxserver/calibre-web关键参数说明:
--name=calibre-web应用名称,-p 8083:8083端口映射,配置成功后通过该 端口访问,记得防火墙中要放开该端口,否则无法访问 ,-e DOCKER_MODS=linuxserver/calibre-web:calibre是否需要支持格式功能,仅x86_64的cpu支持(但还需要在calibre-web中进行配置),-v /data/calibre/config:/config服务器本地与calibre应用配置文件夹映射关系,用于存放用户数据等,-v /data/calibre/books:/books服务器本地与calibre书籍目录映射关系。
在centos中使用mkdir命令创建目录/data/calibre/books和/data/calibre/config,并授予文件夹读写权限
在windows下Calibre本地书库中books,使用xftp将本地windows书库中的所有电子书导入到centos服务器
/data/calibre/books目录下,注意:books目录下的除了所有书籍文件夹上传外,metadata.db数据库也一并上传到centos7中的/data/calibre/books目录下,不然会报“数据库路径无效,请输入正确的路径”
在服务中开启calibre-web应用
docker start calibre-web, 通过浏览器打开http://host:8083进入calibre-web,在calibre书库配置中填写/books即映射到centos服务器中的/data/calibre/books目录下;如果提示“数据库路径无效,请输入正确的路径”,在本地windows中Calibre软件重新创建一个书库文件夹,并将其文件夹下的metadata.db文件单独上传上述centos服务器路径;并对文件夹授予读写权限chmod -R 777 /data/calibre/
使用管理员账号admin/admin123登录calibre-web,并在设置中心修改为语言为中文
登录成功,界面默认为英文
点击用户名admin,在Language下修改语言为中文
修改成功的中文界面
Calibre-web功能进阶:格式转换 &邮件转发至Kindle
登录管理员账号找到 管理权限 - 配置 - 编辑基本配置 - 扩展程序配置,在“Calibre电子书转换路径”栏中填写
/usr/bin/ebook-convert在Unrar程序路径填/usr/bin/unrar,
注意在容器创建时添加了参数
-e DOCKER_MODS=linuxserver/calibre-web:calibre才能支持格式转换,另外,还需要在centos下新建目录并在路径下添加权限、添加权限、添加权限,重要的事说3遍,chmod -R 777 /usr/bin/ebook-convert
在书籍编辑界面对书籍进行格式转换,在任务列表中可以查看转换进度,如果没有给目录
/usr/bin/ebook-convert添加权限,在转换进度的最后时刻会提示失败。
转换成功:

设置将电子书通过邮件发送到kindle邮箱,以163为例,首行登录到邮箱首页,找到设置 - POP3/SMTP/IMAP

然后打开IMAP/SMTP服务,接着新增授权码,记住该码

登录管理员账号找到 管理权限 - SMTP邮件服务器配置 - 编辑邮件服务器配置,按下图填写信息,其中SMTP密码就是上一步中从163邮箱中获取到的授权密码,保存,在查看书籍信息时右上角就有转发到邮件的选项了,但是为了让你的kindle可以正常接收到电子书邮件,还需要登录你的亚马逊账户,在设置中添加可依赖的发件邮箱,即上面的163邮箱。
