阿里云服务器真香宝典之Calibre-Web个人图书馆云端部署

简介: 在阿里云ECS(2核2G,SSD40G,3M带宽)上,安装Ubuntu 22.04,然后配置Docker和FTP。创建 `/config` 和 `/books` 目录,设置权限,开放端口,拉取 `johngong/calibre-web` Docker镜像,以`calibre-web`命名容器,映射端口,配置环境变量,挂载卷,确保重启策略。本地安装Calibre客户端,上传metadata.db到服务器。在Calibre-web服务端配置数据库,启用上传权限,修改管理员账户信息。完成配置后,开始上传电子书并进行阅读。

一、准备工作

1.准备一台云服务器

我选择的是阿里云ECS,配置:2核2G,SSD40G,3M固定带宽(今年销冠)。
aliyun_99.png

服务器的操作系统选用ubuntu 22.04。
ubuntu_env.png

2.安装Docker

Docker的安装教程,有兴趣的小伙伴们可以留言,立马安排。

3.安装FTP服务

FTP的安装教程,有兴趣的小伙伴们可以留言,立马安排。

4.创建/config及/books文件夹

Calibre-Web服务在docker环境下自有一套文件目录,其中的/config以及/books这两个文件夹需要和我们在根目录下/opt里创建的目录做映射,这里是我们图书馆数据库存放的实体文件夹所在。

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

修改文件操作属性,不然,我们在后面往里面写数据库文件,会因为权限被拒绝(避坑点!!!)。

chmod 777 /opt/calibre-web/*

dir_chmod_777.png

5.控制台修改端口规则

我们通过浏览器访问Calibre-Web需要通过8083端口,这个端口需要小伙伴手动添加到控制台的安全组里。

port_enable.png

二、安装Calibre-web

1.拉取镜像

搜索Calibre-Web镜像。

$ sudo docker search calibre-web

calibre.png

拉取Calibre-Web镜像。

$ sudo docker pull johngong/calibre-web

2.创建Calibre-Web服务

配置并运行docker。

# docker run -d \
> --name=calibre-web \
> -p 8083:8083 \
> -e PUID=1000 \
> -e PGID=1000 \
> -e TZ=Asia/Shanghai \
> -e DOCKER_MODS=linuxserver/mods:universal-calibre \
> -e OAUTHLIB_RELAX_TOKEN_SCOPE=1 \
> -v /opt/calibre-web/config:/config \
> -v /opt/calibre-web/books:/books \
> --restart=always \
> johngong/calibre-web

run_calibre.png

1.docker run -d,后台运营docker容器;
2.--name=calibre-web,容器名称calibre-web;
3.-p 8083:8083,端口映射,服务器对外端口:容器calibre-web服务端口;
4.-e PUID=1000,环境变量PUID配置,给容器用户分配ID;
5.-e PGID=1000,环境变量PGID配置,给容器用户组分配ID;
6.-e TZ=Asia/Shanghai,环境变量时区配置,需要查询时区的小伙伴;
7.-e DOCKER_MODS,电子书转换模式(可选,有需要的可以添加这个参数);
8.-e OAUTHLIB_RELAX_TOKEN_SCOPE,允许google OAUTH工作,可以调用google API接口,可选项(小伙伴们懂的都懂了);
9.-v /opt/calibre-web/config:/config,卷映射,服务器文件夹/config:容器文件夹/config;
10.-v /opt/calibre-web/books:/books,同上;
11.--restart=always,docker重启时,容器自动重启;
12.johngong/calibre-web,容器运行的镜像;

查看容器运行状态。

# docker ps

ps_calibre.png

三、本地安装Calibre客户端

1.安装Calibre客户端

Calibre客户端windows下载地址,找到metadata.db数据库文件。
db_local.png

2.上传数据库文件

通过Filezilla将metadata.db文件上传到服务器,并修改文件属性。

sudo chmod 777 metadata.db

db_chmod777.png

四、配置Calibre-web

1.浏览器登录Calibre-Web服务端

输入服务器ip地址:8083,登录名admin,密码admin123。
web_login.png

2.服务端配置

2.1配置数据库

路径:管理权限->编制calibre数据库配置。
db_location0.png

选择/books文件夹,添加metadata.db。
db_location.png

保存并看到“数据库更新已成功”。
db_location_01.png

2.2 添加上传文件权限

路径:管理权限->编辑基本配置。
config_upload00.png

添加上传文件权限并保存,看到“配置已更新”,即配置成功。
config_upload01.png

2.3 用户名及密码修改

通过右上角用户名进入编辑模式,修改用户名及密码。
user_config.png

五、开启阅读之旅

通过本地上传电子书到服务器端。
book_upload0.png
上传完成后,对相应数据元做修改,也可以通过搜索从第三方下载相应数据元。
book_upload.png
体验web端浏览电子书。
book_upload02.png

相关实践学习
基于ECS搭建云上博客
本实验教您如何在ECS云服务器(Alibaba Cloud Linux 3)的环境下,通过部署LAMP环境并安装WordPress快速搭建个人博客。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
运维 数据可视化 C++
2025 热门的 Web 化容器部署工具对比:Portainer VS Websoft9
2025年热门Web化容器部署工具对比:Portainer与Websoft9。Portainer以轻量可视化管理见长,适合技术团队运维;Websoft9则提供一站式应用部署与容器管理,内置丰富开源模板,降低中小企业部署门槛。两者各有优势,助力企业提升容器化效率。
764 1
2025 热门的 Web 化容器部署工具对比:Portainer VS Websoft9
|
Java 应用服务中间件 Docker
java-web部署模式概述
本文总结了现代 Web 开发中 Spring Boot HTTP 接口服务的常见部署模式,包括 Servlet 与 Reactive 模型、内置与外置容器、物理机 / 容器 / 云环境部署及单体与微服务架构,帮助开发者根据实际场景选择合适的方案。
835 25
|
安全 JavaScript Java
java Web 项目完整案例实操指南包含从搭建到部署的详细步骤及热门长尾关键词解析的实操指南
本项目为一个完整的JavaWeb应用案例,采用Spring Boot 3、Vue 3、MySQL、Redis等最新技术栈,涵盖前后端分离架构设计、RESTful API开发、JWT安全认证、Docker容器化部署等内容,适合掌握企业级Web项目全流程开发与部署。
1239 0
|
人工智能 安全 程序员
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
1881 12
|
算法 Java Go
【GoGin】(1)上手Go Gin 基于Go语言开发的Web框架,本文介绍了各种路由的配置信息;包含各场景下请求参数的基本传入接收
gin 框架中采用的路优酷是基于httprouter做的是一个高性能的 HTTP 请求路由器,适用于 Go 语言。它的设计目标是提供高效的路由匹配和低内存占用,特别适合需要高性能和简单路由的应用场景。
846 4
|
缓存 JavaScript 前端开发
鸿蒙5开发宝藏案例分享---Web开发优化案例分享
本文深入解读鸿蒙官方文档中的 `ArkWeb` 性能优化技巧,从预启动进程到预渲染,涵盖预下载、预连接、预取POST等八大优化策略。通过代码示例详解如何提升Web页面加载速度,助你打造流畅的HarmonyOS应用体验。内容实用,按需选用,让H5页面快到飞起!
|
JavaScript 前端开发 API
鸿蒙5开发宝藏案例分享---Web加载时延优化解析
本文深入解析了鸿蒙开发中Web加载完成时延的优化技巧,结合官方案例与实际代码,助你提升性能。核心内容包括:使用DevEco Profiler和DevTools定位瓶颈、四大优化方向(资源合并、接口预取、图片懒加载、任务拆解)及高频手段总结。同时提供性能优化黄金准则,如首屏资源控制在300KB内、关键接口响应≤200ms等,帮助开发者实现丝般流畅体验。
|
前端开发 JavaScript Shell
鸿蒙5开发宝藏案例分享---Web页面内点击响应时延分析
本文为鸿蒙开发者整理了Web性能优化的实战案例解析,结合官方文档深度扩展。内容涵盖点击响应时延核心指标(≤100ms)、性能分析工具链(如DevTools时间线、ArkUI Trace抓取)以及高频优化场景,包括递归函数优化、网络请求阻塞解决方案和setTimeout滥用问题等。同时提供进阶技巧,如首帧加速、透明动画陷阱规避及Web组件初始化加速,并通过优化前后Trace对比展示成果。最后总结了快速定位问题的方法与开发建议,助力开发者提升Web应用性能。
|
JSON 开发框架 自然语言处理
【HarmonyOS Next之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(三)
本文主要介绍了应用开发中的三大核心内容:生命周期管理、资源限定与访问以及多语言支持。在生命周期部分,详细说明了应用和页面的生命周期函数及其触发时机,帮助开发者更好地掌控应用状态变化。资源限定与访问章节,则聚焦于资源限定词的定义、命名规则及匹配逻辑,并阐述了如何通过 `$r` 引用 JS 模块内的资源。最后,多语言支持部分讲解了如何通过 JSON 文件定义多语言资源,使用 `$t` 和 `$tc` 方法实现简单格式化与单复数格式化,为全球化应用提供便利。
482 104

热门文章

最新文章

相关产品

  • 云服务器 ECS