群晖Docker安装一个开源的美观calibre-webserver中文网页版,管理你的图书,推送到Kindle

2019-3-21

同步作者代码更新

添加多用户版及教程(多用户版可切换成单用户版,单用户版不可切换成多用户版)

之前我们推送Kindle总是找各种网站来推送,不但麻烦,而且很多还有限制,每天一本,很是恶心,要不然就要买VIP,我本人买了好几个网站的VIP,去年全都跑路了,目前只有一个还没有跑路,所以以后收集到好的图书,就可以自己管理了,想看的时候直接推送过去,方便多了

我找了很久calibre的docker,自己也制作过几个,但是都不理想,后来在Github上发现了这个项目,找到作者沟通后,修改成为单机版使用

 

感谢作者的源码,Docker跑起来后,可以在首页找到站点源码的链接,和作者书库的打包!

言归正传,开始群晖教程


群晖安装教程

打开群晖Docker—注册表—搜 oldiy 找到 my-calibre-webserver-docker 双击下载,tag选择 latest

如果你有域名有备案想用多用户版,可以tag选择multi-user,否则请使用latest单机版!

多用户版支持QQ,微博,github登录方式!(没有备案域名可以使用github登录方式)多用户版设置,请查看文章底部管理员设置方式!

映像——找到my-calibre-webserver-docker双击安装

改名字,高级设置——创建快捷方式

添加一个卷,映射到本地文件夹,装载路径不可以修改

映射端口

应用——创建容器吧!

容器跑起来之后,我们修改一下smtp,用来推送Kindle

如果使用QQ邮箱,需要打开smtp服务,然后获取授权码(相当于密码)

拿到授权码之后,我们修改一下文件,找到我们本地目录,此时会自动生成几个文件夹,找到如下位置,首先修改权限,不然无法保存

之后,编辑文件,将你自己的smtp,用户名,密码,填写进去,保存文件(如果双击不能打开,需要安装群晖套件——文本编辑器)

之后我们要打开群晖防火墙,放行8000端口

因为修改了配置文件,所以我们重启一下容器就可以正常推送了!

最后,打开网页开始享受自己的图书管理系统吧!打开网页之后,记得先点击登录,才可以使用全部功能!图书删除的话,书库不能少于24本图书,否则程序设置会导致错误!


多用户版配置教程

下载镜像使用tag标签multi-user

按单机版配置后启动容器

进入本机挂载目录 如:/docker/book/data/release/www/calibre.talebook.org/my-calibre-webserver/webserver

找到settings.py

编辑smtp信息,用于推送

编辑douban_apikey信息,用于豆瓣削刮器,因豆瓣已停止API申请,如果没有默认不需要设置!只会从百度获取信息!

编辑微博登录API,QQ登录API,github登录API

 

其中github登录无需备案域名,任何人均可申请

申请地址 # See: https://github.com/settings/applications/new  管理地址 https://github.com/settings/developers

Authorization callback URL回调地址填写 http://你的域名+端口号/complete/github.do

配置好以上信息之后,重启容器,并使用任意一种已设置的登录方式登录

之后打开网页 http://你的域名/user ,查看用户ID 如 1 – oldiy ,那么记得ID为1

进入容器终端,输入命令设置管理员

关闭终端,刷新网页即可看到管理员入口!


  • 本站教程,未注明转载均为原创内容,仅做为学习参考使用,切勿用于非法及商业用途!造成的后果作者不承担任何责任!
  • 如果转载请注明出处!oD^Blog
  • 本文如果需要更新,或者失效请联系微信 : oldiy2018 【微信不解答任何问题,不接收任何红包!】
  • 如果支持作者,请点击下方赞赏,支持一杯饮料!
  • 如果有问题可以点击【加入电报群】和我一起沟通或者下方留言讨论!
赞赏

微信赞赏支付宝赞赏

You may also like...

62 Responses

  1. 马菊长说道:

    这个怎么批量上传图书呢,我试了下每次只能一个文件

  2. withot说道:

    试了一下,似乎任何用户都能直接登录然后添加书籍,安全性有点问题吧

    • oldiy说道:

      这个是单机使用的,如果多用户使用,需要自己申请QQ登录,和微博登录的API才可以,配置文件内关闭单用户,设置好API即可

  3. jjss520说道:

    博主威武,这么快就打包好了,终于用上了,哈哈,感谢
    顺便说一下,博主的电报群链接打不开呀,没玩过Telegram,不知道是否有QQ群

  4. 翁长进说道:

    博主,calibre-webserver中文网页版 可以支持在线查看PDF文档吗?

  5. water moon说道:

    跑起来了,挺好玩的。书籍是需要自己一本一本添加的吗?能不能直接导入Calibre程序的数据和内容?我有五六千本书,一本一本添加要累死人的。

    • oldiy说道:

      可以批量添加,但是要去终端使用命令添加# /data/books/upload/书籍放在这个目录执行下面的命令
      calibredb add –library-path=/data/books/library/ -r /data/books/upload/

  6. guozshi说道:

    release里面没有文件

  7. guozshi说道:

    现在成功,我把book删除了,重新安装就出现了。谢谢

  8. guozshi说道:

    博主,能否有多用户登录的教程

  9. 路人丙说道:

    谁能把电子书共享一下,装好了,没书,硬盘闲得慌

  10. kiwi说道:

    感谢楼主的分享,有两个小问题。1:批量上传的问题、2:我有自己的域名,这样外网也可以访问这个,但是好像不能设置密码。这样如果别人知道了我的端口号不就可以进来了

  11. 路人丙说道:

    calibredb add –library-path=/data/books/library/ -r /data/books/upload/
    这个命令是不是错的,运行不了

    • oldiy说道:

      没有错,你需要到docker容器终端内去执行命令,不是在宿主机ssh内执行

      • 路人丙说道:

        我是在容器里执行的,昨天还给你回复了,好像给你回复是回复不了的

      • 路人丙说道:

        root@oldiy-my-calibre-webserver:/# calibredb add -library-path=/data/books/library/ -r /data/books/upload/

        Traceback (most recent call last):
        File “/usr/bin/calibredb”, line 20, in
        sys.exit(main())
        File “/usr/lib/calibre/calibre/library/cli.py”, line 1640, in main
        return command(args[2:], dbpath)
        File “/usr/lib/calibre/calibre/library/cli.py”, line 467, in command_add
        do_add(get_db(dbpath, opts), args[1:], opts.one_book_per_directory,
        File “/usr/lib/calibre/calibre/library/cli.py”, line 68, in get_db
        raise ValueError(‘No saved library path, either run the GUI or use the’
        ValueError: No saved library path, either run the GUI or use the –with-library option

  12. 翁长进说道:

    如何配置成https访问?

  13. garry说道:

    跟上面的仁兄报一样的错误,书籍也没有添加进去.
    另外,这个镜像好大,有1G大小,能换个底包让尺寸小一点吗?

    • oldiy说道:

      alpine没有calibre,作者的代码,需要这个,以后我有时间的话看一下能不能手动安装一个 caliber吧

  14. ROC说道:

    大佬您好 非常感谢提供的书库docker 一直都在找这个 现在有点问题 修改书籍信息能不能自定义修改 还有为什么一开始用豆瓣削刮的好好的 突然就无法搜索了 非常感谢

  15. jjss520说道:

    博主,能和作者反馈一下,单用户的版本,能设置个密码吗?因为暴露在外网,可以随便删除书箱,这样不太安全

  16. jjss520说道:

    博主,你好,我把原来的单机版删了,重新安装多用户版,但现在date映射的目录里没有文件,但网页又能访问,不知道什么原因

  17. dd说道:

    你好,github中申请api的Authorization callback URL应该填写什么,谢谢

  18. 森林雨说道:

    root@oldiy-my-calibre-webserver-docker1:/# calibredb library-path=/data/books/li
    brary/ -r /docker/book/books/upload/add
    Usage: calibredb command [options] [arguments]

    calibredb is the command line interface to the calibre books database.

    command is one of:
    list
    add
    remove
    add_format
    remove_format
    show_metadata
    set_metadata
    export
    catalog
    saved_searches
    add_custom_column
    custom_columns
    remove_custom_column
    set_custom
    restore_database
    check_library
    list_categories
    backup_metadata
    clone
    embed_metadata
    search
    不能批量添加图书。。。

  19. zzz说道:

    批量还是添加不了额~~~

  20. 柏龙说道:

    如何让访客无法删除图书?

  21. Jervon说道:

    碰巧看到博文,看到这个博客主题蛮好的,已经装上了,请教下左侧的那个图标怎么加上呢?需要哪里设置?

  22. zxzxc说道:

    你好,这个图书我重新安装了好多次,映射到本地文件夹:docker/book,装载路径:/date。但是无法在docker/book下找到任何生成的文件或者文件夹,图书页面可以正常启动,添加书籍也可以,就是找不到他们的文件。

  23. johnny说道:

    博主好,在这个博客里安装了好几个超酷的应用,非常感谢!

    之前安装music的时候,发现在docker/music下找不到任何文件,但是因为占用小,所以也不是很在乎,之后安装aria2和图书时,就发现安装教程的路径设置下,aria2下载的文件能在http://ip:6802下能看到,但是就是找不到在哪里。图书也是,安装后想去文件夹里找文件设置kindle的推送相关,也是无法找到任何文件。

    请教下这种情况该如何解决呢?谢谢!

  24. 安生说道:

    跟calire的数据库是一样的测试无误
    我多个docker的图书馆挂着同一个图书目录
    没有问题

  25. Kevin说道:

    请教一下,博主制作的docker如何修改默认端口呐?现在是8000,想修改到别的端口,十分感谢!

  26. 清风说道:

    The following books were not added as they already exist in the database (see —
    duplicates option):
    Traceback (most recent call last):
    File “/usr/bin/calibredb”, line 20, in
    sys.exit(main())
    File “/usr/lib/calibre/calibre/library/cli.py”, line 1640, in main
    return command(args[2:], dbpath)
    File “/usr/lib/calibre/calibre/library/cli.py”, line 469, in command_add
    tags, opts.series, opts.series_index, opts.cover, identifiers, lcodes, opts.
    filters)
    File “/usr/lib/calibre/calibre/library/cli.py”, line 343, in do_add
    title = title.encode(preferred_encoding)
    UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 0-3: ordin
    al not in range(128)
    出现以下错误,???怎么弄?求解啊

  27. bg9ega说道:

    已经实现登录和批量上传了,非常感谢博主的教程和容器!

  28. 安安说道:

    你好,批量上传那个命令运行并不起作用不知何故。按照您的教程出现了管理员入口,点进去以后就显示“500: Internal Server Error”了是怎么回事啊。还有我通过网页的“添加书籍”按钮上传书籍,在网站上是有显示添加书籍成功也出现了的,但是我在宝塔里面查找上传的书籍,却怎么都找不到,想知道是上传到哪个目录了呢?最后一个问题:)你的网站经常性打不开呢

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注