NAS 里堆了几千本漫画?NowenReader 一键变成私人图书馆

本文软件由网友 竹林风 推荐;

简介

什么是 NowenReader ?

NowenReader 是一个专为 NAS 与个人服务器场景优化的自托管漫画 / 小说管理阅读平台。它可以帮助你轻松管理本地漫画和小说资源,实现智能元数据抓取与沉浸式阅读体验。

主要特点

  • 极致轻量:内存限制 512 MB 即可流畅运行,Docker 镜像仅约 30 MB
  • 零依赖部署Go 编译为单个静态二进制,前端通过 go:embed 嵌入其中
  • 全格式覆盖:漫画支持 ZIP / CBZ / CBR / RAR / 7Z / PDF,小说支持 TXT / EPUB / MOBI / AZW3
  • AI 智能辅助:可选接入 17+ LLM 供应商,支持语义搜索、智能摘要、标签建议等功能
  • 元数据抓取:支持 AniList / Bangumi / MangaDex 等五大源,自动翻译中英文标签
  • 多端访问Web PWA + Flutter 原生客户端(Android / iOS / 桌面)
  • OPDS 协议:支持 KOReader / Moon+ Reader 等阅读器远程串流
  • 开源免费:基于 GPL-3.0 协议开源,可免费使用和修改

应用场景

  • NAS 漫画管理:将 NAS 中堆积的漫画和小说统一管理,自动扫描入库
  • 个人漫画图书馆:为漫画爱好者打造私域、可控、高效的个人漫画图书馆
  • 跨设备阅读:通过 PWAFlutter 客户端实现多端阅读进度同步
  • AI 增强体验:利用 AI 进行智能打标签、语义搜索和个性化推荐

NowenReader 是一个高性能、轻量级的自托管漫画与小说管理阅读平台。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 cropflre,找到 cropflre/nowen-reader,版本选择 latest

本文写作时,latest 版本对应为 v1.0.16

因为参数比较多,使用 docker-compose 安装会比较方便

docker-compose 安装

采用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# ============================================================
# NowenReader - NAS 专用部署配置
#
# 适用于群晖(Synology)、威联通(QNAP)、铁威马(TerraMaster)等
#
# 使用方法:
# docker compose -f docker-compose.nas.yml up -d
#
# 请修改下面的路径为你 NAS 上的实际路径
# ============================================================

services:
nowen-reader:
image: cropflre/nowen-reader:latest
# 平台架构说明:
# - ARM 设备(树莓派、部分 NAS): linux/arm64
# - x86/x64 设备(群晖 x86、威联通 x86): linux/amd64
# 请根据你的 NAS 实际架构取消注释对应行:
# platform: linux/amd64
# platform: linux/arm64
container_name: nowen-reader
restart: unless-stopped
ports:
- "6680:3000"
volumes:
# 数据库和配置(持久化,不要删除)
- ./data:/data
- ./cache:/app/.cache

# === 电子书目录 - 修改为你的实际路径,老苏挂载了 So Novel 的下载目录 ===
# 群晖 Synology 示例:
- /volume1/docker/sonovel/data/downloads:/app/novels

# === 漫画目录 - 修改为你的实际路径 ===
# - /volume1/novels:/app/comics

# 如果有多个漫画目录,全部挂载进来:
# - /volume1/manga:/mnt/manga
# - /volume2/comics:/mnt/comics2
# 然后在 Web 界面的"设置 → 额外漫画目录"中添加 /mnt/manga 和 /mnt/comics2
environment:
- GIN_MODE=release
- DATABASE_URL=/data/nowen-reader.db
- COMICS_DIR=/app/comics
- NOVELS_DIR=/app/novels
- DATA_DIR=/app/.cache
- PORT=3000
# 子路径部署前缀(可选,例如:/reader)
# - BASE_PATH=/reader
# 仅在可信反向代理后启用
# - TRUST_PROXY_HEADERS=true
# 时区(改为你的时区)
- TZ=Asia/Shanghai
# 文件权限映射(设置为你 NAS 文件的 UID:GID,解决 permission denied 问题)
# 可通过 SSH 执行 ls -ln 查看文件的 UID/GID
# - PUID=1000
# - PGID=1000
# 新建文件权限掩码。0002 表示同组用户也可写,适合 NAS/共享目录
# - UMASK=0002
# 如果 NAS/SMB/NFS 无法 chown,且 PUID/PGID 仍无法写入,可开启宽松回退
# - PERMISSION_FIX_MODE=relaxed
# 内存限制(NAS 通常内存有限)
deploy:
resources:
limits:
memory: 512M

环境变量说明

  • GIN_MODE:设置为 release 表示生产模式
  • DATABASE_URL:数据库文件路径
  • COMICS_DIR:漫画文件目录
  • NOVELS_DIR:小说文件目录
  • DATA_DIR:缓存数据目录
  • PORT:服务监听端口
  • TZ:时区设置

然后通过 SSH 登录到您的群晖,执行下面的命令:

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 nowen-reader 和 子目录
mkdir -p /volume1/docker/nowen-reader/{cache,data}

# 进入 nowen-reader 目录
cd /volume1/docker/nowen-reader

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中访问 http://<群晖IP>:6680 ,会引导注册管理员账号

登录后的主界面

看书

因为映射的目录中有已下载的小说,系统会自动扫描并入库

查看小说

AI 设置

进入设置,可以设置 AI,还是以 硅基流动 为例

  • 服务商:选择 Custom(OpenAI Compatible)
  • API URL:填入 https://api.siliconflow.cn/v1
  • API Key:填入你在硅基流动申请的 API key
  • 模型: 虽然刷不出来,但是手动填入也是可以测试通过的

目前硅基流动(SiliconFlow)注册就送 16 元的代金券

注册地址:

https://cloud.siliconflow.cn/i/NkUiXVhQ

回到阅读界面,可以生成摘要,右下角也会多次 AI 助理

注意事项

  1. 数据持久化./data 目录包含数据库,不要删除,否则丢失所有数据
  2. 文件权限:如果遇到 permission denied 问题,可以在环境变量中设置 PUIDPGID 为你宿主机用户的 UID 和 GID
  3. 缩略图缓存./cache 目录用于缓存缩略图,加速启动
  4. NAS 额外目录:如果需要挂载 NAS 上其他目录,可以在 docker-compose.yml 中取消注释相关 volumes 配置
  5. 安全建议:生产环境建议使用反向代理,并配置 HTTPS

参考文档

NowenReader - 高性能自托管漫画 & 小说管理阅读平台
地址:https://github.com/cropflre/nowen-reader

NowenReader Docker Hub
地址:https://hub.docker.com/r/cropflre/nowen-reader

NowenReader 官方网站
地址:http://reader.nowen.cn/

NowenReader 安装指南
地址:https://github.com/cropflre/nowen-reader/blob/main/docs/INSTALL.md