前言

电子书这件事很多人都经历过:硬盘里塞了几百本,PDF、EPUB、MOBI 都有,想找某一本的时候翻遍文件夹,文件名全是"下载-2023-修正版-最终版"这种格式,根本不知道哪本是哪本。时间久了,书越来越多,打开的越来越少,大部分都在硬盘里吃灰。

其实这类问题有更系统的解决方式。Reader 是一款开源电子书管理工具,支持多种格式导入、封面识别、书籍分类和全文搜索。把它跑在极空间私有云上,书籍集中存储在一个地方,配好之后在浏览器里就能管理书架、追更新、看进度。

出门在外的时候,cpolar 穿透一下,手机或者平板打开一个地址就能继续看书,不用把文件传来传去。对于平时阅读量比较大的来说,把这套系统搭好用起来,比在各个阅读 App 之间来回切换要顺很多。

image-20250930105659783

1.在极空间利用docker部署reader

首先打开docker—镜像—仓库,搜索reader,下载hectorqin/reader这个镜像。

35276c283d82d817bb06bb05b388b1ee

获得reader的镜像后,我们需要给这个应用创建2个文件夹,用来存储系统的数据和书籍的文件。我们在根目录下先创建一个docker文件夹;在Docker文件夹下添加一个logs文件夹和一个storage文件夹。

d523db3076fe88cef93adbf5af54ab6e

回到docker的本地镜像界面,双击下载好的reader镜像,开始部署。

58ff7dbdc3bf6e7382c94e8b9bba5e5d

点击文件夹路径,添加刚才创建好的文件夹,装载路径如下:

4fa7b450b7d9548bbdc820108927c7c4

端口设置为9004(自定义),点击应用:

810c62fdc0444c6d7fcb3656b5c18400

部署完成后,用极空间ip+9004就可以打开网页啦!

c5c272b5835fd079298309b59432dca8

接下来我们可以导入一下书源(json格式):

10698b28782754368948b61cf78cfb80

小说书源导入,勾选全部导入0d832c23fd828466d8598f3074c27323

可以根据书源搜索小说了:

f5beaa76a251b010a72d101f3795da0e

也可以导入书籍(支持很多格式txt、epub、pdf等):

d66400f81fc76927b09feea14e1418b1

导入后,在书架就可以看见啦:

835ef9cdf4af076e4876314f4c5bfe92

服务搭好了,别只自己爽!装个 cpolar,打通外网,让朋友也能陪你一起摸鱼看小说,通勤路上不再孤单~

2.安装cpolar实现随时随地开发

cpolar 可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。

❤️以下是安装cpolar步骤:

使用一键脚本安装命令:

sudo curl https://get.cpolar.sh | sh

e464b045413a024674a93ea472511b0f

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

aa03713b56d9eef12a4da6b99d2e46ac

Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。

3af79ad708cc47c5bbea0b63c2c7230d

3.配置公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:reader,注意不要与已有的隧道名称重复

  • 协议:http

  • 本地地址:9004

  • 域名类型:随机域名

  • 地区:选择China Top

image-20250930111810095

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用地址访问。

image-20250930111850012

访问成功。

image-20250930112553810

4.保留固定公网地址

使用cpolar为其配置二级子域名,该地址为固定地址,不会随机变化。

image-20250918151358733

点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我使用的是reader1,大家可以自定义。填写备注信息,点击保留。

image-20250930112804245

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道reader,点击右侧的编辑

image-20250930112831255

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China Top

点击更新

image-20250930112903993

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

image-20250930112947876

最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问极空间的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。

image-20250930113428762

这样,不管是上班路上,还是朋友想看都可以轻松实现啦!

总结

Reader 在极空间上用 Docker 部署,步骤不复杂,主要工作是把书籍文件夹映射进去,然后通过 Web 界面管理书架。书源导入功能支持 JSON 格式,配好之后可以直接搜索网上的图书资源,省去了手动下载的麻烦。

cpolar 在这套方案里解决的是远程访问的问题——书在 NAS 上跑着,外面想看的时候不需要连进同一网络,直接打开地址就能继续读。

整体来说这套组合适合有一定藏书量、想要统一管理的人。一次性搭好之后,找书、看书、追更新都在一个系统里完成,比散落在各个网盘和文件夹里效率高很多。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐