之前有写过一个使用容器技术docker,部署Calibre-web的教程。但是,使用docker有个问题,就是不知道怎么添加电子书转换工具,无法实现电子书格式的在线转换。(如果有大拿知道,基于docker下的calibre-web怎么设置电子书转换工具,望请留言告知,谢谢。)

  • 2019-3-5更新:
后来强迫症发作,还是自己封装了一个docker镜像,解决的转换的问题,详细参考calibre教程第3篇

所以,还是无奈,试着用虚拟机直接假设calibre-web网站,来体验完整的功能,这里做一下记录

calibre-web的Github地址在这。可以从这下载大源代码。

基础背景

  1. CentOS 7
  2. 安装了宝塔面板,非必须
  3. 安装了LNMP
  4. 确保服务器开放了8083端口

安装calibre-web网站

  1. 检查是否安装了python 2.7+
python2 --version

如果安装了宝塔面板,应该默认就会安装好python2.7。如果没有,则手动安装一下

  1. 将之前下载的源码上传到服务器上任意文件夹。可以使用宝塔面板完成。这里放到~/calibre-web下,解压后会看到有一个requirement.txt和cps.py文件。下一步要用。

  1. 运行下方命令安装web
#进入文件夹内
cd ~/calibre-web
#使用python安装
pip install --target vendor -r requirements.txt
  1. 安装可能会遇到一个错误
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-*(其中×与要安装的软件有关)

参考这个。运行一下命令,再重新运行上面的pip命令执行安装,应就Ok了

sudo python -m pip install --upgrade --force pip 
sudo pip install setuptools==33.1.1
  1. 执行python cps.py运行程序。但是如果直接使用这个命令,一旦退出了SSH窗体,web程序就停止了。所以可以借助screen程序,将cps.py放在后台运行
yum install screen
screen -S cps
cd ~/calibre-web/
python cps.py

如果看到显示如下命令行信息,则证明服务器成功运行了。

下面就可以通过http://服务器IP:8083 来访问网站了。

  1. 但是到这还不算完,为了使用网站的电子书转换功能,还需要在服务器上安装calibre软件。

安装Calibre

可以在这个网站直接找到安装的命令行

sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin

运行后,就可以直接安装成功了。可以使用ebook-convert --version来检查安装的转换器是否成功。如果成功会返回转换器的版本号。

设置calibre-web

  1. 第一个坑是,设置数据所在的目录。猜想可能是web程序本身是不能生成数据库文件的,所以在指定calibre数据库位置之前

    1. 先使用win上的calibre程序创建一个空白的数据库文件metadata.db
    2. 将这个metadata.db文件传到你想放置电子书文件的文件夹内,同时修改文件夹权限为777,以确保web程序有权修改数据库。

  1. 重点来了,如果需要使用calibre的ebook-convert功能来转换电子书格式,需要在设置中,指定ebook-convert程序的路径,一定要指定到ebook-convert文件为止,如果只写到文件夹是无效的


然后就可以在界面上通过书籍的编辑界面,进行书籍的转换了。
但是,书籍的转换非常的耗CPU,转换过程很慢,而且有很多问题。所以还是建议在本地电脑上使用Calibre程序转换格式后上传,毕竟个人电脑的性能比一般的VPS性能强很多。

好了,到此算是完整部署了calibre-web网站。Have fun!

Last modification:March 5, 2019
如果觉得文章对你有用,请随意赞赏