华为云云耀云服务器L实例评测|部署个人在线电子书库 calibre
- 一、云耀云服务器L实例介绍
- 1.1 云服务器介绍
- 1.2 应用场景
- 1.3 支持镜像
- 二、云耀云服务器L实例配置
- 2.1 重置密码
- 2.2 服务器连接
- 2.3 安全组配置
- 三、部署 calibre
- 3.1 calibre 介绍
- 3.2 Docker 环境搭建
- 3.3 calibre 部署
- 3.4 calibre 使用
- 四、云耀云服务器L实例诊断功能
- 五、总结
一、云耀云服务器L实例介绍
1.1 云服务器介绍
云服务器是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。其管理方式比物理服务器更简单高效。用户无需提前购买硬件,即可迅速创建或释放任意多台云服务器。云服务器帮助您快速构建更稳定、安全的应用,降低开发运维的难度和整体IT成本,使用户能够更专注于核心业务的创新 。
华为云焕新推出华为云云服务器实例新品,华为云云服务器具有智能不卡顿、价优随心用、上手更简单、管理特省心这四个优点,从而帮您快速上云!
从8月底到10月中旬,参与华为云云服务器开启评测活动,可以获得54.99元的优惠券,即可免费使用 华为云云耀云服务器L实例 轻量服务器 2核|2G|3Mbps
一个月,提供了超多系统镜像和应用镜像,方便开发部署。
还有 限时秒杀专区,华为云云耀云服务器L实例
每日限量抢购,优惠仅限1单,抢完即止!
1.2 应用场景
云耀云服务器L实例适用于支撑小型网站、Web应用、博客、论坛、云端开发环境等轻量级、低负载且访问量适中的应用场景。
电商店铺管理
:快速搭建外贸独立站、店铺管理环境,为海内外顾客提供稳定、优质的服务。企业建站
:提供常用建站类应用模板,快速构建满足业务诉求的网站,如企业官网、资讯、博客、论坛、电商等。小程序后台
:适合于构建微信小程序以及公众号后台服务,降低维护成本,让用户专注于业务开发。小游戏
:帮助客户搭建PC单机游戏、休闲小游戏等,快速上线,性能稳定。开发测试
:适合云端构建即开即用的远程开发、测试项目,运行定时任务、自动任务等。云端学习
:帮助学生、开发者在云端做一些实验、论文等。搭建博客/论坛
:方便个人开发者搭建博客、论坛,性价比高。
1.3 支持镜像
镜像 | 简介 |
---|---|
系统镜像 | 仅包含了初始操作系统 ,不包含任何应用数据 和环境配置 。选用系统镜像创建云服务器后,服务器中是一个纯净的操作系统环境。您可以根据实例的业务需求自行安装应用。 |
应用镜像 | 包含应用及相关初始化数据、应用所需的运行环境及操作系统 。选用应用镜像创建云服务器后,您可以直接使用预置的应用程序,也可以根据实际的业务需求自定义应用配置。减少了应用的上传、安装等环节。 |
- 云耀云服务器L实例提供的系统镜像信息
镜像名称 | 说明 |
---|---|
Huawei Cloud EulerOS | Huawei Cloud EulerOS(简称HCE OS),是基于华为开源社区openEuler构建的linux操作系统,提供云原生、高性能、安全稳定的执行环境来开发和运行应用程序,助力企业客户快速上云及开发者创新。 |
CentOS | CentOS是一款流行的开源Linux发行版,是RHEL(Red Hat Enterprise Linux)源代码经过再编译而成。 |
Ubuntu | Ubuntu是最热门的Linux发行版之一,是一款开放源代码的免费软件,基于Debian Linux操作系统,其易用性和稳定性均非常出色,并且拥有非常强大成熟的社区资源。 |
Windows Server | Windows Server是Microsoft专门创建用于服务器的一系列操作系统。 |
- 云耀云服务器L实例提供的应用镜像信息
镜像名称 | 说明 |
---|---|
企业建站系统Wordpress | Wordpress起初是一款博客系统,后逐步演化成一款免费的CMS(内容管理系统/建站系统),目前是全球化的建站平台。这套系统因易用性、易扩展性(插件 、模板 、二次开发)、功能强大、美观、搜索引擎友好等而闻名。 |
Linux可视化宝塔面板 | 宝塔面版是流行的PHP集成环境管理及服务器运维管理工具。支持Web端管理,一键创建网站、FTP、数据库、SSL;安全管理,计划任务,文件管理,PHP多版本共存及切换。 |
企业一体化ERP系统Odoo | Odoo是面向全球用户的开源ERP/CRM软件,采用Python+PostgreSQL开发,有超过730个合作伙伴和200万用户。它有强大而灵活的系统架构,产品迭代速度也非常快,其版本区别在于用户界面及功能模块的更新。用户可在不修改核心代码的情况下模块化修改、升级、新增功能,常用模块包括:采购管理,销售管理,库存管理,财务管理,货品管理,营销管理,客户关系管理,生产管理,人事管理,服务支持、电子商务、建站等。适用于制造、零售连锁、服务、电子商务、外贸等行业。 |
电子商务系统PrestaShop | PrestaShop是一款全功能、跨平台的免费开源电子商务解决方案,采用PHP+MySQL开发。全球已超过四万家网店采用Prestashop进行部署。Prestashop基于Smarty引擎编程设计,模块化设计,扩展性强,能轻易实现多种语言,多种货币浏览交易,支持Paypal等支付手段,是外贸网站建站的佳选。 |
数据探索与可视化平台Superset | Apache Superset是一个开源的数据分析与可视化平台(曾用名Panoramix、Caravel),该工具在可视化、易用性和交互性上很有特色,用户可以轻松实现对数据进行可视化分析。Superset也是一款企业级商业智能Web应用程序。 |
Docker可视化运行环境Portainer | Portainer是Docker的图形化管理工具,由GO语言编写的,提供状态显示、应用模板快速部署、对于Docker(容器、镜像、网络、数据库逻辑卷)的基本操作、日志显示、容器控制台等功能。 |
企业云盘系统Nextcloud | Nextcloud是一款用于自建私有网盘的云存储开源软件,采用PHP+MySQL开发,提供了多个同步客户端支持多种设备访问,用户可以很方便地与服务器上存储的数据保持同步,并分享数据。还支持其他同步来源:Dropbox、FTP、OpenStack Object Storage、SMB、WebDAV、SFTP。 |
一站式DevOps 平台GitLab | GitLab起初是一个开源源码仓库管理项目,旨在帮助团队协作进行软件开发。通过以业界领先的速度提供新功能,GitLab现在为软件开发和运营生命周期提供了一个完整的DevOps方案。GitLab功能包括:项目管理,计划,创建,验证,打包,发布,配置,监视和保护应用程序所需的一切。 |
网络统计分析平台Matomo | Matomo是一个强大的开源网络分析平台,拥有完全的数据所有权,并确保业务符合GDPR和CCPA。尤其对于商业软件来说,Matomo增强的搜索引擎优化以及转换优化能力,让您在数字营销领域能力大大增强。 |
实时视频服务器SRS | SRS是一个简单高效的实时视频服务器,支持RTMP、WebRTC、HLS、HTTP-FLV、SRT等多种实时流媒体协议。基于协程技术,无异步回调难以维护的问题。支持云原生标准(Docker镜像、K8s部署、可观测性日志和监控指标等),提供云SRS无门槛应用。SRS聚焦于实时流媒体网关,实现实时流媒体协议的接入和互相转换以及不断迭代,比如RTMP、HLS、WebRTC、HTTP-FLV和SRT等。 |
二、云耀云服务器L实例配置
2.1 重置密码
购买完成后,会短信通过你的云服务器信息,重点是公网IP地址和用户名。首先我们需要打开你的服务器控制台,完成重置密码
勾选自动重启,点击确定即可。
2.2 服务器连接
-
方式一:使用控制台提供的VNC方式登录
-
方式二:使用Putty、Xshell等工具登录Linux弹性云服务器,
a) 下载安装登录工具,例如Putty。
b) 输入弹性公网IP。
c) 输入用户名:root、密码,单击“确定”。 -
方式三:使用Linux/Mac OS系统主机登录Linux弹性云服务器。
a) 执行连接命令。
ssh 弹性公网IP
例如:ssh 123.xxx.xxx.456
b) 输入用户名:root、密码,登录服务器。
我个人习惯使用 MobaXterm
这款软件,添加SSH连接,输出公网IP
、用户名和端口(默认22),连接即可。
2.3 安全组配置
安全组是一个逻辑上的分组,为同一个VPC内的云服务器提供访问策略。用户可以在安全组中定义各种访问规则,当云服务器加入该安全组后,即受到这些访问规则的保护。
系统为每个网卡默认创建一个默认安全组,默认安全组的规则是对出方向上的数据报文全部放行,入方向访问受限。您可以使用默认安全组,也可以根据需要创建自定义的安全组。
主要需要填写优先级(默认填1即可)、协议端口信息(一般选择你项目需要暴露的端口即可),其他默认点击确定即可。安全组配置主要是暴露端口可以给外网访问。
如果还不清楚可以参考文档:安全组配置示例
三、部署 calibre
3.1 calibre 介绍
Calibre-Web 是一款网络应用程序,提供简洁直观的界面,可使用有效的 Calibre 数据库浏览、阅读和下载电子书。
主要特点
- 现代化、反应灵敏的 Bootstrap 3 HTML5 界面
- 全图形化设置
- 全面的用户管理,可按用户权限进行细粒度管理
- 管理界面
- 多语言用户界面,支持 20 多种语言
- 用于电子书阅读器应用程序的 OPDS 源
- 高级搜索和过滤选项
- 自定义藏书(书架)创建
- 支持电子书元数据编辑和删除
- 从各种来源下载元数据(可通过插件扩展)
- 通过 Calibre 二进制文件转换电子书
- 限制登录用户下载电子书
- 支持公共用户注册
- 单击即可将电子书发送至电子阅读器
- 将 Kobo 设备与 Calibre 图书库同步
- 浏览器内电子书阅读支持多种格式
- 上传各种格式的新书,包括音频格式
- 支持 Calibre 自定义列
- 根据类别和自定义列内容隐藏每个用户的内容
- 自我更新功能
- "魔力链接 "登录,方便在电子阅读器上访问
- 支持 LDAP、Google/GitHub OAuth 和代理验证
calibre 可以建立个人的书库,不仅仅可以记录看过的书籍,,同样也可以存档对应书的电子书文件,随时可以下载。可以建立书单,给书评分、分类、加标签、关键字查找、查看图书简介等,还可以在线阅读,无需加载客户端,非常方便。另外无广告、免费,不存在过了会员期限就无法观看,不存在没了外网就无法阅读,不存在数据上报,而且没有内容删减。
- 官网:https://calibre-ebook.com/
- Github:https://github.com/janeczku/calibre-web
3.2 Docker 环境搭建
本次服务器环境是ubuntu系统镜像,需要自己安装docker环境
服务器类别 | 系统镜像 | 内网IP地址 | Docker版本 | 操作系统版本 |
---|---|---|---|---|
云耀云服务器L实例 | Ubuntu | 192.168.0.168 | 20.10.24 | Ubuntu 22.04.1 LTS |
使用snap
命令安装docker
root@hcss-ecs-f632:~# snap install docker
docker 20.10.24 from Canonical✓ installed
测试docker
安装是否成功
root@hcss-ecs-f632:~# docker -v
Docker version 20.10.24, build 297e128
检查docker
服务状态
root@hcss-ecs-f632:~# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2023-09-14 14:25:21 CST; 2 days ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 30672 (dockerd)
Tasks: 73
Memory: 137.0M
CPU: 2min 37.906s
CGroup: /system.slice/docker.service
检查docker compose
版本
root@hcss-ecs-f632:~# docker compose version
Docker Compose version v2.17.2
3.3 calibre 部署
- 下载镜像
从docker hub拉取 calibre 镜像,地址:https://hub.docker.com/r/linuxserver/calibre-web
root@hcss-ecs-f632:~# docker pull linuxserver/calibre-web
Using default tag: latest
latest: Pulling from linuxserver/calibre-web
ec7797702745: Already exists
07a0e16f7be1: Already exists
af6616957726: Already exists
f98603590030: Already exists
f3ce711537bb: Already exists
0631cc002f75: Already exists
e84f7b29d280: Pull complete
35bfe7b730a2: Pull complete
Digest: sha256:b7ca05d53c1f30026dcc1de7baee4c1716e0c082aaf05e19e06ee6c18c0e5636
Status: Downloaded newer image for linuxserver/calibre-web:latest
docker.io/linuxserver/calibre-web:latest
- 配置安全组
在华为云云耀云服务器L实例的安全组管理页面,添加入方向规则,接下来我们启动服务需要监听8083端口,所以添加安全组为TCP:8083
协议端口。
- 启动服务
使用docker-compose
方式启动,先创建文件docker-compose.yml
version: "2.1"
services:
calibre-web:
image: 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:
- ./config:/config
- ./books:/books
ports:
- 8083:8083
restart: unless-stopped
- volumes:映射容器内部文件路径到本地
- ports:配置访问端口
如果将上述代码片段保存在名为 docker-compose.yml 的文件中,则只需从同一文件夹中运行 docker compose up -d
即可自动拉取 calibre映像,并创建并启动一个容器。 up
表示启动服务,-d
表示在后台执行。docker-compose down
命令用于停止和清理由 docker-compose up
启动的服务。
root@hcss-ecs-f632:~/calibre# docker-compose up -d
Creating network "calibre_default" with the default driver
Creating calibre-web ... done
- 检查容器状态
检查 calibre 容器状态,确保容器正常启动
root@hcss-ecs-f632:~/calibre# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b4fd1fb7f56d lscr.io/linuxserver/calibre-web:latest "/init" 36 minutes ago Up 36 minutes 0.0.0.0:8083->8083/tcp, :::8083->8083 /tcp calibre-web
- 访问地址
内网:http://localhost:8083
外网:http://公网IP:8083
- 访问结果
若出现此页面,则部署 calibre server 成功。
3.4 calibre 使用
默认用户名:admin
,默认密码:admin123
,输入用户名和密码,完成登录,后续请自行修改密码
数据库设置:登录后会进入到数据库配置页面,表单填写/books
,点击保存,看到提示Database Settings updated
,然后就可以上传
和编辑
书架了
此处要安装calibre客户端,新建一个书架,然后在calibre安装目录获取软件自动创建的
metadata.db
文件,把metadata.db
放在docker创建的books
文件夹中,并设置读写权限chmod 777 -R books
为了方便查看,点击右上角的admin
,修改语言为简体中文
开启上传配置:管理权限 - 配置 - 编辑基本配置 - 功能配置 - 启用上传
,勾选上,点击保存
允许上传的格式:fb2,kepub,odt,pdf,cbr,djvu,azw,html,ogg,doc,mobi,txt,cbt,wav,epub,cbz,flac,azw3,mp4,m4a,m4b,docx,rtf,mp3,prc,opus,lit
等到提示Calibre-Web 配置已更新
,刷新网页,就可以看到上传书籍
按钮
推荐一个下载电子书的网站
zlibrary
(目前可用):https://zlibrary-east.se/
现在上传一个本地的PDF格式的电子书文件,会自动获取封面信息,好像是书的第一页内容,书名作者信息好像是根据文件名自动识别的,你也可以自行修改或添加某些信息,点击保存即可,看到提示已成功更新元数据
说明上传成功。
上传成功后的首页就显示了书籍列表了
点击该图书,可用看到基本信息,可用下载、在线阅读、归档和标记已读,还可以重新编辑图书信息
使用在线阅读功能查看该图书
calibre 还支持高级搜索功能,便于查找到想要的书籍,这就需要补充详细的图书信息了。calibre 采用sqlite
数据库,兼容性较好,一本书籍大小通常在20M
左右,一般1G存储足够存放几十上百本书籍和小说等内容,方便离线观看,书籍备份。
这里还有书籍列表
,可以更加方便查看所有上传的书籍及其信息
我们来查看下 calibre 的映射文件路径books
下的内容
root@hcss-ecs-f632:~/calibre/books# ls
'Doug Sillars' metadata.db 任玉刚
- metadata.db:存储图书信息
- 其他文件夹:的存储图书文件和封面图片文件
calibre 电子书库的基本功能使用如上所述,主要的方便查看图书和整理图书信息,由于作为我个人使用,我就没有开放注册
功能,此项目是支持配置的,关于 calibre 的更多功能和配置就需要自行探索了。
四、云耀云服务器L实例诊断功能
云耀云服务器L实例
最近上线了一个一键诊断
功能,自助工具可以帮您检测弹性云服务器性能、费用、网络、磁盘等状态,及时发现问题并对异常指标给出专业修复建议和解决方案,带给您更好的上云体验。
今天刚好遇到一个问题,部署calibre
时,容器已经启动,且通过docker ps
查看状态良好,但是访问时候出现无法访问此网站
的情况,访问端口已经添加安全组
中。原以为是添加的端口有冲突,于是修改成其他端口,重新启动容器还是不行。于是还有个猜想,就是添加的安全组不生效,于是重启服务器,结果问题还是存在。而且访问其他端口的项目均正常,就新添加的项目无法访问,百思不得其解。
于是尝试一键诊断
功能,发现问题点 :带宽超限
,带宽使用率已经超过90%,并给修复建议:带宽超限后,可能会引起随机丢包
,为保证业务正常运行,推荐您对带宽进行升配。
这个时候才想到是在跑的项目太多占用了带宽,我的华为云云耀云服务器L实例
服务器目前已经再跑的项目有6个,于是马上关掉了一个项目服务,calibre项目就可以正常访问了。
五、总结
云耀云服务器L实例是新一代开箱即用、面向中小企业和开发者打造的全新轻量应用云服务器。云耀云服务器L实例提供丰富严选的应用镜像,实现应用一键部署,助力客户便捷高效的在云端构建电商网站、Web应用、小程序、学习环境、各类开发测试等。
而且云耀云服务器L实例使用门槛较低,如果您是正在了解云计算服务的入门用户,或是需要在服务器中部署简单应用的个人开发者、中小企业,比如部署一些轻量级的有趣的项目,那么推荐您选择云耀云服务器L实例
。