惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
IT之家
IT之家
博客园 - Franky
Stack Overflow Blog
Stack Overflow Blog
宝玉的分享
宝玉的分享
Recent Announcements
Recent Announcements
Engineering at Meta
Engineering at Meta
S
SegmentFault 最新的问题
V
Visual Studio Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Last Week in AI
Last Week in AI
H
Help Net Security
V
V2EX
H
Hackread – Cybersecurity News, Data Breaches, AI and More
量子位
博客园 - 叶小钗
J
Java Code Geeks
博客园 - 【当耐特】
月光博客
月光博客
爱范儿
爱范儿
人人都是产品经理
人人都是产品经理
酷 壳 – CoolShell
酷 壳 – CoolShell
小众软件
小众软件

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
《树莓派防吃灰》第十六期:安装Calibre Web建立公网可访问私...
2023-08-20 · via 少数派

最近在整理收藏的电子书,以便在公网可以随时访问自己的电子书,然而,Calibre桌面端虽然功能强大,并且可以开启本地http服务,但http的界面还是过于简陋

我发现了一个Calibre Web开源项目,界面也非常舒服,支持多用户管理,可以在无桌面环境的树莓派家庭服务器直接部署!

Calibre Web开源地址:https://github.com/janeczku/calibre-web

本篇是Calibre Web的树莓派端的部署教程,最后会将http服务映射到公网,可以通过电脑或手机随时随地阅读分享我们电子书库!

image.png
IMG_2813.PNG
cd  /opt/
mkdir /opt/calibre-web

创建存储配置文件的文件夹config 以及存储书籍的文件夹books

mkdir /opt/calibre-web/config
mkdir /opt/calibre-web/books

sudo chmod 777 -R /opt/calibre-web/

创建Docker Compose文件

touch /opt/calibre-web/docker-compose.yml

在docker-compose.yml内写入以下内容

version: "2.1"
services:
  calibre-web:
    image: lscr.io/linuxserver/calibre-web:latest
    container_name: calibre-web
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - DOCKER_MODS=linuxserver/mods:universal-calibre #optional
      - OAUTHLIB_RELAX_TOKEN_SCOPE=1 #optional
    volumes:
      - /opt/calibre-web/config:/config
      - /opt/calibre-web/books:/books
    ports:
      - 8083:8083
    restart: unless-stopped

如果你不需要对以上配置进行修改,可以用以下命令行直接写入配置

sudo bash -c 'cat > /opt/calibre-web/docker-compose.yml' <<-'EOF'
version: "2.1"
services:
  calibre-web:
    image: lscr.io/linuxserver/calibre-web:latest
    container_name: calibre-web
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - DOCKER_MODS=linuxserver/mods:universal-calibre #optional
      - OAUTHLIB_RELAX_TOKEN_SCOPE=1 #optional
    volumes:
      - /opt/calibre-web/config:/config
      - /opt/calibre-web/books:/books
    ports:
      - 8083:8083
    restart: unless-stopped
EOF

启动Calibre Web

/opt/calibre-web/ 目录 运行sudo docker-compose up -d 即可

cd /opt/calibre-web/
sudo docker-compose up -d

通过浏览器访问 http://树莓派局域网ip:8083 即可看到Calibre Web版界面

Web面板

输入默认用户admin,默认用户密码admin123, 点击Login

image.png

登录成功

image.png

进入 /opt/calibre-web/config 下载 metadata.db

cd /opt/calibre-web/config
wget https://raw.githubusercontent.com/janeczku/calibre-web/master/library/metadata.db
image.png

选择刚刚现在下载好的metadata.db

image.png
/config/metadata.db
image.png
image.png

修改登录用户名修改登录密码,保存

image.png


修改成功

image.png

如何管理书籍

Calibre Web目前没有提供管理书籍的功能,我们需要安装Calibre桌面客户端,使用Calibre桌面客户端管理Calibre Web版的数据库。

Calibre客户端下载: https://calibre-ebook.com/zh_HK/download

image.png
image.png

/opt/calibre-web/config/metadata.db文件存在于树莓派,本地安装完成的Calibre客户端无法直接读写/opt/calibre-web/config/metadata.db,我们可在树莓派开启smb服务(可以参考以前的教程 《树莓派4B家庭服务器搭建指南》第二期:网盘界的未来科技,新增smb服务并完成内网穿透,实现所有设备共享文件 https://www.v2fy.com/p/2021-10-03-pi-smb-1633231650000/ ),将树莓派/opt/ 文件夹挂载到本地,进而实现本地Calibre客户端对/opt/calibre-web/config/metadata.db文件的读写

通过smb挂载后,我们可以像访问本地磁盘一样,访问树莓派的的文件

image.png

安装Calibre

选择语言

image.png

下一步

image.png

完成

image.png

使用Calibre客户端管理

image.png
image.png
  • 切换书库
image.png
image.png
image.png
image.png

拖拽上传到树莓派

image.png

上传成功

image.png
  • 打开 Calibre Web, 可以在浏览器Web端看到刚刚上传的书籍了
image.png
  • 点击书籍,可以在线阅读
image.png
  • 支持PC和移动端,体验还不错
image.png
image.png
  • 可以通过设置,进行字体和背景色调节,也可以直接通过目录进行章节跳转
image.png
image.png
image.png
  • 如果想要在公网使用,只需在树莓派的frpc.ini添加对8083的端口开放规则即可
[books-frp-v2fy-com-8083]
type = tcp
local_ip = 127.0.0.1
local_port = 8083
remote_port = 8083

设置完成后,记得重启树莓派的frpc,同时开放云服务器的8083端口

frp的内网穿透具体设置,可以参考树莓派不吃灰的001和004两期,frp设置方法都试一样的,这里不在赘述

001 《树莓派4B家庭服务器搭建指南》第一期:刷Ubuntu Server 20.04,绑定公网域名,对公网提供http服务,SSH登录服务
https://www.v2fy.com/p/2021-10-01-pi-server-1633066843000/

004 《树莓派4B家庭服务器搭建指南》第四期: 用树莓派搭建公网个人下载平台aria2-pro,推荐6个优质种子资源站

公网顺利访问Calibre Web成功

  • PC浏览器公网访问
image.png
  • 手机浏览器公网访问
手机浏览器公网访问

多加几本书,电子书海报墙的感觉就来了

image.png
IMG_2813.PNG

一些实用经验

Calibre Web 目前还没有实现跨设备同步进度,同一账号登录,手机端和PC端阅读进度无法同步,只在本设备记录上次阅读的位置,Calibre Web的书签是支持跨设备同步进度的,我们在设备A停止阅读时,可以添加一个书签,在设备B打开书签即可跳转到对应位置。

Calibre Web如果报500错误(数据库同时被几个Calibre客户端操作,容易死锁数据库),一般重启Calibre Web的Docker服务就能解决。

本文用的是macOS版Calibre做的示例,但Windows版的Calibre其实更好用一些。繁体中文版的Calibre客户端翻译也比较奇怪,推荐用Calibre英文版,各项操作指令一目了然。

小结

Calibre是一个古老而强大的电子书管理工具,而开源项目Calibre Web 利用Calibre的数据库,将电子书转换为可以公网访问的web服务,确实是很棒的互联网产品思路。

本文为《树莓派不吃灰》系列的第十六篇,《树莓派不吃灰》Github更新地址 https://github.com/zhaoolee/pi 为喜欢折腾树莓派的人,提供打开思路的资源,寓教于乐,让树莓派造福人类。

Telegram频道: https://t.me/zhaoolee_pi

Telegram频道RSS订阅地址: https://rsshub.v2fy.com/telegram/channel/zhaoolee_pi

本文永久更新地址(欢迎来读留言,写评论):

https://www.v2fy.com/p/2023-06-09-calibre-web-1686295170000