【Calibre-Web】Calibre-Web服务器安装详细步骤(个人搭建自用的电子书网站,docker-compose安装)

文章目录

    • 一、Calibre-Web和Calibre的区别是什么?使用场景分别是什么?
    • 二、服务器安装docker和docker-compose
    • 三、服务器安装Calibre-Web步骤
      • 1、安装完成后的目录结构
      • 2、安装步骤
      • 3、初始配置
      • 4、启动上传
    • 四、安装Calibre
    • 五、docker-compose常用命令
    • 六、客户端
      • 1、ios在appstore搜“kybook”
      • 2、安卓下载 静读天下app(注意不要在应用商店下载,貌似googleplay有)

最近想用自己的迷你主机搭建一个个人图书馆,方便自己看小说和教学类的电子书。

所以在服务器上安装了Calibre-Web,在自己的笔记本和台式机上安装了Calibre。

一、Calibre-Web和Calibre的区别是什么?使用场景分别是什么?

Calibre:

  • 功能完整的桌面应用程序
  • 重点在于电子书的管理和处理
  • 独立运行的本地软件

Calibre-Web:

  • 基于Web的在线图书馆系统
  • 重点在于图书的展示和阅读
  • 需要服务器部署的网页应用

主要功能对比

功能CalibreCalibre-Web
图书管理✅ 完整强大⭕️ 基础管理
元数据编辑✅ 专业完整⭕️ 基础编辑
格式转换✅ 支持多种格式❌ 需依赖Calibre
在线阅读❌ 不支持✅ 支持
多用户支持❌ 单用户✅ 多用户系统
远程访问❌ 本地使用✅ 随处访问

Calibre 和 Calibre-Web 是互补的工具:

  • Calibre 专注于管理和处理
  • Calibre-Web 专注于展示和阅读

最理想的方案是:

  • 用 Calibre 做后台管理
  • 用 Calibre-Web 做前台展示
  • 两者结合获得最佳体验

二、服务器安装docker和docker-compose

想到小伙伴们的服务器系统可能都不同,所以花了一天的时间认真整理了docker的安装步骤,这里就不再赘述啦~

点击这篇博客(虚拟机分别安装了Ubuntu、CentOS、Debian等系统的docker、docker-compose的操作步骤)

题外废话:真喜欢docker呀!真的很方便!很适合懒人!

三、服务器安装Calibre-Web步骤

1、安装完成后的目录结构

/data/calibre/
├── docker-compose.yml    # 配置文件
├── config/               # Calibre-Web配置目录
│   ├── app.db           # 应用数据库
│   ├── calibre-web.log  # 日志文件
│   └── config.json      # 配置文件
├── books/               # 图书库目录
│   ├── metadata.db    # 数据库文件,这个文件必须存在
│   └── [作者名]/[书名]  # 图书文件
└── upload/              # 上传目录

image-20241205111137181

2、安装步骤

  1. 创建必要的目录
# 创建主目录
mkdir -p /data/calibre# 创建子目录
mkdir -p /data/calibre/{config,books,upload}# 进入calibre目录
cd /data/calibre# 使用普通用户权限
sudo chown -R 1000:1000 /data/calibre/{config,books,upload}
chmod -R 755 config books upload

image-20241205111027893

  1. 创建 docker-compose.yml 文件
nano docker-compose.yml
  1. 粘贴以下内容

    为避免空格等格式问题,也可以点击这里直接下载,扔到目录中

version: '3'
services:calibre-web:# 官方下载失败可以使用可用的镜像dockerpull.org# dockerpull.org/linuxserver/calibre-web:latest# 24年11月整理了20来个可用的镜像网站且用且珍惜#	https://download.csdn.net/download/mudarn/90051682# 官方镜像image: linuxserver/calibre-web:latestcontainer_name: calibre-webenvironment:# 使用普通用户权限,避免安全问题- PUID=1000- PGID=1000# 设置时区为上海- TZ=Asia/Shanghai# 安装完整的Calibre,支持格式转换等功能# dockerpull.org/linuxserver/mods:universal-calibre# 使用本地 Calibre 管理 -> 可以不需要 DOCKER_MODS#- DOCKER_MODS=linuxserver/mods:universal-calibreports:# Web访问端口- "7089:8083"volumes:# 配置文件目录- ./config:/config# 图书库目录,存放所有图书和数据库- ./books:/books# 上传目录,用于本地Calibre同步上传- ./upload:/upload# 容器重启策略restart: always# 使用bridge网络,保持网络隔离networks:- calibre-net
networks:calibre-net:driver: bridge
  1. 保存和退出

    ctrl+o(字母)保存
    回车
    ctrl+x退出文件
    
  2. 提前准备数据库文件

    # 下载初始数据库文件
    wget https://raw.githubusercontent.com/janeczku/calibre-web/master/library/metadata.db -O books/metadata.db# 设置权限,所有者和所属组更改为 UID 和 GID 为 1000 的用户和组。
    sudo chown 1000:1000 books/metadata.db# 设置权限 644,即文件所有者可以读取和写入,所属组和其他用户只能读取。
    sudo chmod 644 books/metadata.db
    

    image-20241205134738076

  3. 启动

# 启动
docker-compose up -d# 查看日志
docker-compose logs -f#日后维护常用命令
# 查看容器状态
docker-compose ps# 重启服务
docker-compose restart# 更新镜像
docker-compose pull && docker-compose up -d# 查看资源使用
docker stats calibre-web# 清理并重建
docker-compose down --rmi all && docker-compose up -d

image-20241205131956599

启动成功

image-20241205133526570

3、初始配置

  • 访问地址:http://服务器IP:7089

  • 默认账号:admin

  • 默认密码:admin123

    image-20241205133620926

  • 首次登录配置:

    设置图书库路径为:/books

    image-20241205135102569

    更改中文和修改默认密码

    image-20241205141457223

    如果language中没有选项,可以在/data/calibre/config目录下,加一个配置文件再重启

image-20241205141900822

cd /data/calibre/config
nano config.json

粘贴以下

{"language": "zh-CN"  // 添加或修改为中文简体
}

保存和退出

ctrl+o(字母)保存
回车
ctrl+x退出文件

也可以直接点这里下载json文件

重启

cd /data/calibre
docker-compose restart

image-20241205142236869

4、启动上传

管理权限–编辑基本配置–功能配置–启动上传

image-20241205162623536

image-20241205162644995
在这里插入图片描述

四、安装Calibre

整理中后期补充

五、docker-compose常用命令

点击这里查看整理好的博客文章

六、客户端

1、ios在appstore搜“kybook”

image-20241206090123121

(1)

image-20241206090202822

(2)

image-20241206090226156

(3)

image-20241206090243047

(4)输入自己的 web地址/opds,键盘点搜索,用户名密码就是web登陆的用户名密码
image-20241206090321099

(5)

image-20241206090407957

(6)

image-20241206090428259

2、安卓下载 静读天下app(注意不要在应用商店下载,貌似googleplay有)

我是在这个博主这里下载的,点击这里

设置方法:

app左上角的图标(三横杠)–网上书库–app左上角的图标(三个点)—增加新书库

输入自己的 web地址/opds

用户名密码就是web登陆的用户名密码

image-20241206091136478

image-20241206091119228

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/484857.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人工智能驱动的骗局会模仿熟悉的声音

由于人工智能技术的进步,各种现代骗局变得越来越复杂。 这些骗局现在包括人工智能驱动的网络钓鱼技术,即使用人工智能模仿家人或朋友的声音和视频。 诈骗者使用来自社交媒体的内容来制作深度伪造内容,要求提供金钱或个人信息。个人应该通过…

【QT】一个简单的串口通信小工具(QSerialPort实现)

目录 0.简介 1.展示结果 1)UI界面: 2)SSCOM(模拟下位机收发): 3)VSPD虚拟串口驱动(连接上位机和下位机的串口): 4)实际收发消息效果及视频演…

python语法基础---正则表达式(补充)

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 上一篇文章中,我们讲到了贪婪匹配和非贪婪匹配,我们在这篇文章中,主要讲的就是贪婪匹配和非贪婪匹配的剩下的部分,话不多说&#x…

Elasticsearch数据迁移(快照)

1. 数据条件 一台原始es服务器(192.168.xx.xx),数据迁移后的目标服务器(10.2.xx.xx)。 2台服务器所处环境: centos7操作系统, elasticsearch-7.3.0。 2. 为原始es服务器数据创建快照 修改elas…

golang实现单例日志对象

原文地址:golang实现单例日志对象 – 无敌牛 欢迎参观我的个人博客:无敌牛 – 技术/著作/典籍/分享等 介绍 golang有很多日志包,通过设置和修改都能实现日志轮转和自定义日志格式。例如:log、zap、golog、slog、log4go 等等。 …

7. 一分钟读懂“单例模式”

7.1 模式介绍 单例模式就像公司里的 打印机队列管理系统,无论有多少员工提交打印任务,大家的请求都汇总到唯一的打印管理中心,按顺序排队输出。这个中心必须全局唯一,避免多个队列出现资源冲突,保证打印任务井然有序。…

【AI系统】布局转换原理与算法

布局转换原理与算法 数据布局转换目前已经越来越多地用于编译器的前端优化,将内部数据布局转换为后端设备友好的形式。数据布局转换主要影响程序的空间局部性,所谓空间局部性指的是如果一个内存位置被引用了一次,那么程序很可能在不远的将来…

GPS周和周内秒 UTC时 格林尼治时间

1.GPS周和周内秒介绍 GPS周和周内秒是全球定位系统(GPS)中用于时间表示的两个重要概念,它们共同构成了GPS时间系统。以下是对这两个概念的详细介绍: GPS周(GPS Week) GPS周是GPS系统内部所采用的时间单位…

Java-异常处理机制-try-catch

Java-异常处理机制 一、异常概述1、异常的抛出机制2、如何对待异常3、异常的体系结构3.1、Throwable3.2、Error和Exception3.3、编译时异常和运行时异常3.4、常见的异常有哪些? 二、异常的处理方式一 try-catch的使用1、过程1:抛2、过程2:抓3…

在Ubuntu22.04.5上安装Docker-CE

文章目录 1. 查看Ubuntu版本2. 安装Docker-CE2.1 安装必要的系统工具2.2 信任Docker的GPG公钥2.3 写入软件源信息2.4 安装Docker相关组件2.5 安装指定版本Docker-CE2.5.1 查找Docker-CE的版本2.5.2 安装指定版本Docker-CE 3. 启动与使用Docker3.1 启动Docker服务3.2 查看Docker…

【趋势红蓝交易】主图指标操盘技术图文展示,注意要点,通达信炒股软件指标

如上图,主图指标【趋势红蓝交易】,蓝色线下空头趋势,不进场操作或只做超短线的反弹行情。红线之上多头行情,顺势做多,波段和趋势多头操作。 多空操作区间K线变色功能,上涨区间红色K线,叠加紫色趋…

网络协议(TCP/IP模型)

目录 网络初识 网络协议 协议分层 协议拆分 分层 协议分层的优势 1.封装效果 2.解耦合 TCP/IP五层模型 协议之间配合工作(详解) 网络初识 网络核心概念: 局域网:若干电脑连接在一起,通过路由器进行组网。 …

基于图和个性化PageRank的RAG方法HippoRAG

HippoRAG是2024年5月的一篇论文《HippoRAG: Neurobiologically Inspired Long-Term Memory for Large Language Models》(github),它受人脑长期记忆的启发(Hippo是海马体英文单词的前缀),用知识图谱(KG)来存储知识,并用检索编码器和个性化Pag…

【电子设计】WifiESP8266无线通信

硬件 野火STM32开发板 操作系统 FreeRTOS 软件Keil5野火蓝牙模块 ESP8266模块 1. ESP8266 简介 ESP8266 是串口型 WIFI,速度比较低,不能用来传输图像或者视频这些大容量的数据,主要应用于数据量传输比较少的场合,比如温湿度…

《Clustering Propagation for Universal Medical Image Segmentation》CVPR2024

摘要 这篇论文介绍了S2VNet,这是一个用于医学图像分割的通用框架,它通过切片到体积的传播(Slice-to-Volume propagation)来统一自动(AMIS)和交互式(IMIS)医学图像分割任务。S2VNet利…

单体应用、SOA和微服务架构有什么区别?

大家好,我是锋哥。今天分享关于【单体应用、SOA和微服务架构有什么区别?】面试题。希望对大家有帮助; 单体应用、SOA和微服务架构有什么区别? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 单体应用(Mono…

实习冲刺第四十天

54.螺旋矩阵 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入:matrix [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5] 思路详解:本题我们可以设置…

第11篇 计算数据中最长的连续1的个数__ARM C语言<四>

Q:如何设计ARM C语言程序将结果(最长的连续1的个数)显示在7段数码管上? A:基本原理与ARM汇编语言程序类似,也是对HEX并行端口对应内存映射地址进行写操作。如要在HEX0上显示数字0,就点亮除数码…

软件无线电安全之GNU Radio基础(下)

往期回顾 软件无线电安全之GUN Radio基础(上) 背景 在上一小节中,我们简单介绍和使用了GNU Radio软件的基础功能和模块,同时通过GNU Radio Companion(GRC)创建了简单的流程图,展示了信号生成、处理和输出的流程。最后…

用点云信息来进行监督目标检测

🍑个人主页:Jupiter. 🚀 所属专栏:传知代码 欢迎大家点赞收藏评论😊 目录 概述问题分析Making Lift-splat work well is hard深度不准确深度过拟合不准确的BEV语义 模型总体框架显性深度监督 深度细化模块演示效果核心…