【在群晖配合 calibre 搭建了一个个人的电子书网站】
搭建一个个人的电子书网站
作为一个松鼠党,从高中逛E-INK开始就收集各类电子书,这么多年下来也积攒了一大笔积蓄。下书入流水,看书如抽丝。那么这些书的管理就成了一个问题。最后选了半天还是决定用 calibre 来管理自己的电子书。
calibre 虽然速度有些慢,不过应该是目前为止能找到的最好的电子书管理工具了。和 kindle 的结合也很好。考虑数据的备份,除了在自己的 Mac 上存放了书库以外,还利用 Resilio Sync 把书库存到了群晖上。这样就算是电脑被偷数据也不会丢了。不过 calibre 的数据库有一个缺点,他在电脑上储存文件的目录结构是 /calibre/author/books
而且会把全部的汉字转换成拼音。直接用 Mac 上的 calibre 看的话挺方便的,但是远程用手机访问群晖的话看到的都是类似于拼音文件。找书很不方便。所以就想找一下有没有 calibre 的 web 版本。
搜了一下果然有人已经早好轮子了calibre-web
用 Python 写的一个 Web abb。
官方介绍是这样的:Calibre Web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.
直接利用 calibre 的数据库,然后支持下载,上传,在线阅读,数据修改,发送到 kindle。而且手机端和 web 端都支持,真是完美符合我的需求。不过要吐槽一点,这个源码居然不打 tag,程序更新完全是靠 git 拉取来更新。真的是大开眼界。
既然调研好了,那么就开始搭建吧。
网站搭建
背景说明
- 群晖 216+Ⅱ
- Calibre
- Resilio
- docker
其实上面啥都不需要,只需要一台能运行 docker 的设备就可以了。内存大约 100m 不知道树莓派能不能撑得住。Python 的效率真低呀。
首先先是电脑上安装 calibre,然后同步自己的书库到群晖。这一步网上教程太多,就不详细介绍了。
同步完之后,我们的群晖上就有了数据库。例如我的目录是 /Backup/书库 里面有一个数据库文件 metadata.db
数据库有了,就开始安装程序。程序安装很简单,只需要一个 python 环境就可以了。
执行命令以后你就把网站搭好了,访问 //localhost:8083 就可以看到自己搭建的网站了。
不过妈妈说了,能用 docker 解决的问题都用 docker 解决。
Dockerfile 如下
项目的主页有一个镜像了,但是我个人有点没看懂,而且镜像里面是不带项目本身的,在第一次启动镜像的时候会从 git 上面拉取最新的源码,然后重启。其实挺符合这个开源项目的风格的,利用 git 进行版本更新。写得其实比我好。有需要的小伙伴可以自己研究安装。
安装说明
说了半天废话,那么图文教大家如何安装吧。
首先安装群晖的 docker 点开注册表 双击选择阿里云。
搜索 calibre,找到我写好的的镜像后双击下载。因为在国内,所以挺快的。感谢阿里爸爸。
安装完双击启动容器
配置一下本地目录和装载目录。本地目录就是你电子说所在的位置。
如果你需要电子书编辑的功能,那么不要勾选只读。英文我只想浏览和下载,所以选择了只读。
设置完成以后点击确认 应用。你的个人服务器就布置好了。 举个例子 例如我群晖的路由访问页面是 192.168.10.101:6001,那么 192.168.10.101:8083 就可以看到自己部署的网站了。