linux部署calibre-web服务

前言

calibre 是一款功能强大且易于使用的电子书管理器,而calibre-web是calibre的web服务,可以提供网页管理书籍、下载书籍、在线阅读等功能。关于calibre的功能,详细可以参考它的官网。https://calibre-ebook.com/zh_CN

1、部署环境及下载

环境

相信大多数人是用NAS部署,通过内网穿透实现线上管理、下载、阅读功能。而本文是部署在linux服务器上(别问,问就是没钱买NAS)

下载

可以去github找,直接把项目git clone下来,推荐2个git项目都可以选择。
https://github.com/janeczku/calibre-web
https://github.com/linuxserver/docker-calibre-web

或者去docker hub搜索calibre-web,通过docker pull下来。
docker hub上也有很多别人二开的docker镜像,功能也蛮不错的。
本文选择了

git clone https://github.com/linuxserver/docker-calibre-web

2、安装

2.1 编写docker-compose.yml文件

通过docker-compose拉起镜像,在项目根目录新建docker-compose.yml,然后编写以下内容:

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

上面写的都是基本参数,关于calibre-web镜像的一些额外参数,可以参考自己下载的镜像说明。
参数都比较简单,这里重点讲一下PUIDPGID
linux系统输入,

id yourusename

就可以查看当前账号的PUIDPGID。这个参数一定不能错,不然拉起镜像后会出现权限问题,无法写入书库。

2.2 拉起docker镜像

输入

sudo docker-compose up -d

即可拉起镜像。
然后通过查询

sudo docker ps -a

可以查看拉起的镜像状态。

首次拉起,calibre-web需要下载一些包,会比较耗时,大概是国内访问外网速度慢的问题?或者是我的服务器配置太拉了?
我的calibre-web服务在compose up之后,大概是花了2个小时才能成功访问,曾经多次一度以为是自己拉错了。。
如果性子急的朋友,可以通过打开目录/var/lib/docker/containers
找到自己的镜像,查看log文件观察进度。

2.3 访问calibre-web

docker拉起后,等calibre-web初始化结束,就可以通过访问 http://公网ip:8083 ,初始账号是admin,初始密码是admin123。如果访问不了的朋友,检查一下自己的8083端口有没有打开。

3、安装过程出现的问题

3.1 DB Location is not Valid, Please Enter Correct Path

如果出现这个问题,说明安装目录下缺少了metadata.db文件。
那么你需要上传metadata.db文件到/books目录下才能解决。/books目录就是docker-compose.yml里面/books的设置的路径。
这个文件去哪里找?
1、通过下载calibre的PC端安装包,安装在windows系统后,通过书库目录找到metadata.db,再通过xshell上传到自己服务器的/books目录下。
2、github上面有人提了issue,issue下面直接下载别人的metadata.db文件
https://github.com/janeczku/calibre-web/issues/1695
3、通过docker容器重新生成

# 进入容器内
docker exec -it calibre-web bash
# 执行命令生成metadata.db文件
calibredb restore_database --really-do-it --with-library /ebooks/
# 添加写权限
chmod 666 /ebooks/metadata.db

不管是哪种方式上传的metadata.db,都需要设置权限666或777。

3.2 attempt to write a readonly database

这是上传书籍时候有可能报的错,原因就是权限问题。请重新检查PUIDPGID是否正确。实在搞不明白这2个参数的朋友,如果你有root权限,那么你的root的PUIDPGID都是0,用root拉起即可。

4、一些简单的设置

  • 语言设置:点击右上角的admin账号,在账号设置里找到language,选择中文,保存并刷新页面即可。
  • 上传书籍设置:点击右上角“管理权限”,找到“配置”->“编辑基本配置”,找到“功能配置”,勾选“启用上传”。
    file

file

总结

calibre-web是一个优秀的开源项目,管理书籍非常便利,通过docker部署也非常方便。另外,个人感觉还是部署到NAS上会比较好,毕竟服务器的硬盘容量有限。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇