由于作者更新源码,本文已失效,请移步https://odcn.top/2019/02/26/2734/ 查看最新Docker教程!
之前一直在找一个个人图书管理系统,因为calibre界面丑陋,并且web上传图书会导致整个数据库损坏,一直没有更好的替代方案
直到发现了这个
作者github:https://github.com/talebook/my-calibre-webserver
演示地址:https://www.talebook.org
可以在线阅读,可以上传图书,可以推送kindle,基本功能都有了,终于可以安静的看书了。
安装后发现该项目只限于网络使用,需要登录后才可以各种操作,但是项目登录只限于QQ和微博登录,鉴于以上登录都需要域名和备案,所以联系作者之后,给出了单机版的解决方案,现在将安装过程做了一个记录
安装过程
#安装各种依赖
1 2 |
apt-get install calibre python-pip unzip supervisor sqlite3 git -y pip install jinja2 social-auth-app-tornado social-auth-storage-sqlalchemy tornado Baidubaike |
#创建目录和下载web程序
1 2 3 4 5 6 |
mkdir -p /data/log/ mkdir -p /data/books/ mkdir -p /data/release/www/calibre.talebook.org/ mkdir /data/books/{library,extract,upload,convert,progress} cd /data/release/www/calibre.talebook.org/ git clone https://github.com/talebook/my-calibre-server.git |
# /data/books/upload/要添加至少24本书后执行下面的命令
1 |
calibredb add --library-path=/data/books/library/ -r /data/books/upload/ |
#创建数据库
1 |
python /data/release/www/calibre.talebook.org/my-calibre-server/server.py --syncdb |
#单机版本修改数据库增加用户(如果有域名有QQ和微博的API,可以跳过以下几步!直接到 #复制supervisor设置 继续安装)
#链接数据库
1 |
sqlite3 /data/books/develop.db |
#创建用户
1 |
insert into readers(id, username, active, extra) values(1, "User", 1, "{}"); |
#退出数据库
1 |
.quit |
#修改user_handlers.py为单机版
1 2 |
sed -i 's/url = self.get_argument("url", "")/self.set_secure_cookie("user_id", "1")/g' /data/release/www/calibre.talebook.org/my-calibre-server/webserver/handlers/user_handlers.py sed -i "s#return self.html_page('login.html', vars())#self.redirect('/')#g" /data/release/www/calibre.talebook.org/my-calibre-server/webserver/handlers/user_handlers.py |
#复制supervisor设置
1 |
cp /data/release/www/calibre.talebook.org/my-calibre-server/conf/supervisor/calibre-webserver.conf /etc/supervisor/conf.d/ |
#第一次启动
1 |
/usr/bin/supervisord |
#重启命令
1 |
supervisorctl restart all |
现在打开http://<IP>:8000 访问即可
如果需要外网访问,直接做一个反代即可
群晖内安装方法
群晖docker注册表搜ubuntu
双击安装,选择标签 16.04 下载后创建容器
群晖内新建三个文件夹
映射卷 装载路径不可以修改
映射端口8000
进入终端
然后按上面安装方法安装即可!
本站教程,未注明转载均为原创内容,仅做为学习参考使用,切勿用于非法及商业用途!造成的后果作者不承担任何责任!
如果转载请注明出处!oD^Blog
本文如果需要更新,或者失效请联系微信 : oldiy2018 【微信不解答任何问题,不接收任何红包!】
如果支持作者,请点击下方赞赏,支持一杯饮料!
如果有问题可以点击【加入电报群】和我一起沟通或者下方留言讨论!
赞赏微信赞赏
支付宝赞赏
你这里这就是我半夜拜访的动力呀
能做成从器发布吗?运行第一条命令时就提示:
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package calibre
E: Unable to locate package python-pip
E: Unable to locate package unzip
E: Unable to locate package supervisor
E: Unable to locate package sqlite3
E: Unable to locate package git
apt-get update
你好,我做到这一步的时候/usr/bin/supervisord报错,请问咋办呢。。。
Error: Another program is already listening on a port that one of our HTTP servers is configured to use. Shut this program down first before starting supervisord.
For help, use /usr/bin/supervisord -h
supervisorctl restart all
使用这个命令试试!
supervisor能启动,但tornado还是报错。。。
2019-02-21 02:14:45,165 INFO exited: tornado-8000 (exit status 2; not expected)
2019-02-21 02:14:46,167 INFO gave up: tornado-8000 entered FATAL state, too many start retries too quickly
不能直接做成DOCKER版吗?按照步骤来还是出错,LINUX玩不转
最后一步 重启的时候报错
calibre:tornado-8000: ERROR(spawn error)
8000端口被占用了吧
那我怎么修改端口呢
my-calibre-webserver/conf/supervisor/calibre-webserver.conf
这个文件 可以改端口
这个图书GITHUB的源貌似很久没更新了。我该怎么更新书库呢?需要打包成跟作者一样的格式上传吗?
# /data/books/upload/ 添加图书后执行下面的命令
calibredb add –library-path=/data/books/library/ -r /data/books/upload/
群晖关机重启时这个就停止工作了,不能开机启动
重启后 执行 supervisorctl restart all