Skip to content
/ calibre-docker Public
  • Notifications You must be signed in to change notification settings
  • Fork 19
  • Star 75

docker 一键部署 calibre 在线书库

75 stars 19 forks Branches Tags Activity
Star
Notifications You must be signed in to change notification settings

EXP-Tools/calibre-docker

Branches Tags

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits

.github

.github

 
 

books

books

 
 

data

data

 
 

imgs

imgs

 
 

nginx

nginx

 
 

.gitignore

.gitignore

 
 

README.md

README.md

 
 

docker-compose.yml

docker-compose.yml

 
 

index.html

index.html

 
 

run.ps1

run.ps1

 
 

run.sh

run.sh

 
 

stop.ps1

stop.ps1

 
 

stop.sh

stop.sh

 
 

Repository files navigation

calibre-docker

docker 一键部署 calibre 在线书库


概要

你是否面临以下困扰:

  • 想翻看曾经看过的某本小说的时候,网上已经找不到了
  • 即使网上找到了,因为版权原因无法在线看、甚至无法下载
  • 可以在线看,但是要收费
  • 连载小说几个月才出一册,囤了一年后却不知道自己看到哪了
  • 在家看小说看了一半突然要出门,打算在路上看,于是不得不把小说发送到手机
  • ......

其实只需要搭建一个私人书库,这些问题就迎刃而解了:

  • Calibre: 一款强大且易用的电子书本地管理工具,可以在 Windows、macOS 和 Linux 平台搭建个人私人的电子书书库。
  • Calibre-web: Calibre 的 CMS 界面,用于读取和下载 Calibre 数据库中的电子书,同时它支持 OPDS 协议
  • OPDS: 全称是 Open Publication Distribution System 开放式出版发布系统,是基于 Atom 和 Http 的一种目录格式。OPDS 主要实现 2 个功能:(1) 让电子出版物被发现,可以使用简单的搜索和一些其他的浏览器技术;(2) 让用户下载电子出版物,直接免费下载或进行出售

项目说明

本仓库包含三个 docker 镜像:

镜像 用途 服务端口 端口说明
calibre calibre 后端 8080 calibre 管理页面
calibre-web calibre 前端 8083 CMS 页面,同时提供 OPDS 服务
nginx 反向代理 calibre 服务 80 项目说明页面

目录结构说明

calibre-docker
├── books ....................... [缓存目录:导入电子书到 calibre 时,仅可以选择在该目录下的电子书]
├── data ........................ [存档目录:calibre 的数据库(包括电子书本身),用于数据迁移]
├── calibre
│   ├── cms
│   │   └── Dockerfile .......... [calibre 前端镜像构建脚本]
│   └── mgr
│       └── Dockerfile .......... [calibre 后端镜像构建脚本]
├── nginx
│   ├── etc
│   │   └── calibre_site.conf ... [代理服务配置]
│   └── html .................... [代理服务主页]
├── index.html .................. [Github Paget:自动跳转到代理服务主页]
├── docker-compose.yml .......... [calibre 镜像构建脚本]
├── run.sh ...................... [calibre 服务一键启动脚本]
├── stop.sh ..................... [calibre 服务一键停止脚本]
├── imgs ........................ [README 插图目录]
└── README.md ................... [本仓库说明文档]

环境要求

部署步骤

1. 项目构建

  • 宿主机安装 docker、docker-compose
  • 宿主机安全组/防火墙(iptables/firewall)放行这些端口的入口流量: 80、8080、8081、8083
  • 下载仓库: git clone -b main --single-branch https://github.com/lyy289065406/calibre-docker /usr/local/calibre-docker (只下载 main 主分支即可)
  • 打开仓库目录: cd /usr/local/calibre-docker
  • 构建镜像并运行: ./run.sh -u admin -p admin123完全启动约需要 2 分钟,书库越大启动越慢

构建时设置的是 calibre 后端管理页面的账密,calibre-web 前端账密只能在 CMS 上修改。

2. 配置 calibre

  • 登录后端管理页面:http://${vps-ip}/mgr/(或 http://${vps-ip}:8080
  • 默认登录账密: admin / admin123
  • 参考下图,根据向导进行初始化设置(必须记得配置路径为 /config/Calibre Library,该路径用于存储 calibre 的配置库,默认挂载到宿主机的 data 目录)

3. 导入本地电子书

先把电子书上传到宿主机的 books 目录,然后登录后台管理页面,点击【Add books】,在【/books】目录找到所上传的电子书,点击【Open】即可导入到 calibre 数据库。

可以把个人电子书存储到另一个 Repo(如 ebooks-library),使用时再通过 git clone 拉取到 books 目录

4. 配置 calibre-web

  • 登录前端 CMS 页面:http://${vps-ip}/cms/(或 http://${vps-ip}:8083
  • 默认登录账密: admin / admin123
  • 根据向导设置 calibre 配置库路径,路径就是前面的 /config/Calibre Library
  • 成功登录后即可看到在后端管理页面导入的电子书

点击右上角的 【admin】 即可修改用户密码

阅读设置

1. PC 阅读

默认情况下 admin 用户是无法在线阅读电子书的,需要先授权阅读权限:

点击右上角的【管理权限】,编辑【admin】用户,勾选【允许在线阅读】即可。

之后点击任意一本电子书,会多出一个【在线阅读】按钮:

2. 手机阅读

calibre-web 提供了 OPDS 协议的服务地址:http://${vps-ip}/cms/opds/(或 http://${vps-ip}:8083/opds/)。

换言之所有支持 OPDS 协议的 APP 都可以对接到 calibre-web 获取书库中的电子书,例如这些 APP :

APP 适用设备/系统 说明
FullReader Android 界面清新但是有广告,而且汉化不完全,有少量韩文
AIReader Android 没有广告但是外观不好看
kybook3 iOS 目前已知 iOS 唯一支持 OPDS 的 APP
kindle kindle 仅在 kindle 设备上支持 OPDS,在 Android/iOS 上不支持

以 FullReader 为例:点击【网络图书馆】->【添加OPDS目录】,填写 calibre 的 OPDS 服务地址和 BasicAuth 账号密码即可。

FAQ

Q1. 迁移 data 目录的数据库后无法运行 CMS 服务

理论上 data 目录挂载了 calibre 运行所需的全部数据(包括电子书本身),只要完整迁移到任何设备就可以直接运行。

但若 calibre 非正常停止过,就会导致 calibre-web (即 CMS 服务)无法运行。

解决方法也很简单:

  • 执行 stop.sh 脚本停止 calibre 服务
  • 查看 data/.config/calibre/gui.jsonlibrary_usage_stats 状态值是否为 1,若不是则修改为 1
  • 执行 run.sh 脚本重新启动 calibre 服务,此时 CMS 服务应该可以正常启动了

Q2. 项目仓库太大无法下载到本地

本仓库包含 main 和 produce 两个分支,其中:

  • main: 干净分支,纯粹用于构建私人书库
  • produce: 我的生产环境分支,归档了我的个人书库数据,而且会越来越大

因此 produce 分支是不需要下载的,只下载 main 主分支即可:

git clone -b main --single-branch https://github.com/lyy289065406/calibre-docker

About

docker 一键部署 calibre 在线书库

lyy289065406.github.io/calibre-docker/

Topics

docker learning book calibre

Resources

Readme
Activity
Custom properties

Stars

75 stars

Watchers

1 watching

Forks

19 forks
Report repository

Releases

No releases published

Sponsor this project

  • ko_fi ko-fi.com/exppoc
  • https://lyy289065406.github.io/sponsor/

Packages

No packages published

Languages

  • CSS 85.9%
  • HTML 7.9%
  • Shell 6.2%

Footer

© 2024 GitHub, Inc.

哆哆女性网erp什么意思tokyohotn0833怎么起商标名字专业合作社起名子销售提成方案花田少年史免费h网站男孩起名字珺意义好吗大小姐驾到smskb12月8日是什么星座英国撤销CGTN在英国广播许可绵羊绵羊我爱你读心专家剧情介绍阿里通信官网笔画与起名6月底出生的宝宝起名庄园起名2018狗年出生的人如何起名李姓女孩起名大全2020公司起名两个字大全集高干文推荐父亲姓李母亲姓孟起名深圳卫视回看女孩起名用 12画的字洛神赋名句证件集团给公司起名搞笑韩姓女宝宝起名字美国道琼斯指数实时行情淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻不负春光新的一天从800个哈欠开始有个姐真把千机伞做出来了国产伟哥去年销售近13亿充个话费竟沦为间接洗钱工具重庆警方辟谣“男子杀人焚尸”男子给前妻转账 现任妻子起诉要回春分繁花正当时呼北高速交通事故已致14人死亡杨洋拄拐现身医院月嫂回应掌掴婴儿是在赶虫子男孩疑遭霸凌 家长讨说法被踢出群因自嘲式简历走红的教授更新简介网友建议重庆地铁不准乘客携带菜筐清明节放假3天调休1天郑州一火锅店爆改成麻辣烫店19岁小伙救下5人后溺亡 多方发声两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#青海通报栏杆断裂小学生跌落住进ICU代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了当地回应沈阳致3死车祸车主疑毒驾武汉大学樱花即将进入盛花期张立群任西安交通大学校长为江西彩礼“减负”的“试婚人”网友洛杉矶偶遇贾玲倪萍分享减重40斤方法男孩8年未见母亲被告知被遗忘小米汽车超级工厂正式揭幕周杰伦一审败诉网易特朗普谈“凯特王妃P图照”考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼恒大被罚41.75亿到底怎么缴男子持台球杆殴打2名女店员被抓校方回应护栏损坏小学生课间坠楼外国人感慨凌晨的中国很安全火箭最近9战8胜1负王树国3次鞠躬告别西交大师生房客欠租失踪 房东直发愁萧美琴窜访捷克 外交部回应山西省委原副书记商黎光被逮捕阿根廷将发行1万与2万面值的纸币英国王室又一合照被质疑P图男子被猫抓伤后确诊“猫抓病”

哆哆女性网 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化