NAS必备服务导航页精选:七款工具对比评测与部署指南
长期使用NAS后,往往会随着使用经验的积累而部署大量的Docker服务。在一台NAS上安装十几个甚至二十多个应用程序,已经成为相当普遍的现象。
QBittorrent、Emby、Jellyfin、Transmission、Plex、NASTool、IT-Tools、Uptime Kuma、DDNS-Go、Navidrome、Lucky、Alist、Reader 等各类实用软件工具。
不知道大家情况如何,我个人几乎为每一项服务都配置了反向代理,并通过独立的二级域名进行访问。
尽管主域名和监听端口相对固定,但记住如此众多的子域名前缀也颇具挑战……除了NAS本身的Web管理界面以及少数几个最常用的服务外,很多时候我不得不先打开Lucky查看具体的域名,然后才能访问目标服务。

为了有效解决这一管理难题,本期将介绍几款优秀的项目。它们能够承担起NAS或服务器服务导航的重任。其中一些不仅轻量易用,还附带了其他实用功能,甚至可以作为浏览器的默认首页使用。

本文将以威联通(QNAP)NAS为例,演示如何通过Docker Compose部署这些导航页。
🍉 Sun-Panel
项目简评与特色
国人开发者无疑最懂国内用户的需求,本篇首先推荐Sun-Panel。其界面简洁直观,功能却相当强大,系统资源占用低,对移动端的支持也非常出色,操作逻辑极为简单。总体而言,它是一个轻量级、高度可定制且开箱即用的Web控制面板。如果非要指出缺点,那就是其1.3.0版本之后转向了闭源,不过这也在情理之中。
建议大家先部署试用一下,用不了十分钟就能对其功能有一个大致的了解。
部署与初步配置
部署代码如下所示,请注意保持格式的对齐:
version: "3.2" # 最新版Docker Compose可删除此行,该版本声明已弃用
services:
sun-panel:
image: "hslr/sun-panel:latest"
container_name: sun-panel
volumes:
- /share/Container/sunpanel/conf:/app/conf # 请根据实际情况修改目录路径
- /var/run/docker.sock:/var/run/docker.sock # 挂载docker.sock以实现部分高级功能
# - ./runtime:/app/runtime # 挂载日志目录,对多数用户意义不大
# - /mnt/sata1-1:/os # 挂载硬盘路径(请根据自身需求修改)
ports:
- 3002:3002
restart: always
关于硬盘挂载点的路径,不同品牌的NAS有所差异。例如,威联通NAS的典型路径可能是/share/CACHEDEV1_DATA1或/share/CACHEDEV2_DATA。也可以直接挂载具体的共享文件夹,例如- /share/Multimedia:/os或- /share/Container/data:/os。

如果按照上述配置部署成功,在浏览器中输入 NAS_IP:3002 即可访问服务界面。
默认的登录账号与密码如下:
账号:admin@sun.cc
密码:12345678

界面右上角的图标点击后可以快速切换内外网访问环境,这个设计非常贴心。

右上角的四叶草图标点击后可以进行更多个性化设置,整个过程相当简单便捷。

经过简单的配置后,页面效果如图所示。面板自带的搜索功能,可以快速定位并打开已添加的应用程序。

可以随时更换背景壁纸。


如果觉得背景图片过于花哨,可以启用模糊处理效果。模糊程度支持自由调节,背景图也会根据浏览器窗口的大小自动进行缩放适配。

尽管1.3.0版本之后推出了需要付费的Pro功能,但其免费的基础版本已经足够满足日常使用,强烈推荐大家尝试此项目。

🍉 Flare
项目简评与特色
同样出自国内开发者之手,但项目近期更新不太活跃,可能功能已经趋于稳定完善。
Flare采用了更简单透明的数据管理策略,使用纯文本格式(如YAML)来存储书签数据。它的特点是简约、快速、轻量,并且超级易于安装和配置。支持显示欢迎语、时间日期、天气信息,编辑操作简单,在手机等移动设备上的适配效果完美。

项目作者是这样描述其优势的:
Flare 最大的优势是在拥有和 Flame 一样的美观界面的前提下,拥有着绝对的性能优势:不论是 10M 不到的容器镜像体积、还是平时运行起来30M 以内的内存消耗、亦或者 99% 情况下的页面秒开(成千上万条书签),并且不会触发笔记本等设备的风扇狂转。
部署与配置指南
services:
flare:
image: soulteary/flare
restart: always
# 默认无需添加任何参数,如有特殊需求
# 可阅读文档 https://github.com/soulteary/docker-flare/blob/main/docs/advanced-startup.md
command: flare
# 如需启用账号登录模式,请使用以下命令参数
# command: flare --nologin=0
# environment:
# 如需开启用户登录模式,需要先设置 `nologin` 启动参数为 `0`
# 如开启 `nologin`,未设置 FLARE_USER,则默认用户为 `flare`
# - FLARE_USER=flare
# 指定你自己的账号密码,如未设置 `FLARE_USER`,则会默认生成密码并展示在应用启动日志中
# - FLARE_PASS=your_password
# 是否开启“使用向导”,访问 `/guide`
# - FLARE_GUIDE=1
ports:
- 5005:5005 # 左侧主机端口可根据需要自行修改
volumes:
- /share/Container/flare/app:/app # 左侧主机路径请根据实际情况修改
在内网环境中,按照上述代码部署后,通过浏览器访问 NAS_IP:5005 即可。

如前所述,需要在对应的数据文件(如“应用书签”、“分类书签”和“程序配置”)中配置链接名称、链接地址以及图标(icon)等信息。这种配置方式与后面会提到的Dashy项目有些类似。

关于更多提升使用体验的详细操作,建议参考原作者提供的详细教程。
在GitHub上搜索 soulteary/flare 项目,点击右侧的Wiki链接即可查看。喜欢这种极简风格的朋友不妨部署试用。

🍉 Homepage
本节末尾提供了一个配置模板的小福利,请不要错过。
项目简评与特色
Homepage的功能可能是本文所介绍项目中最强大的。其界面布局介于简约和丰富之间,显示的内容和具备的功能都非常多,整体观感饱满,对手机端的支持也相当不错。
部署过程不算特别复杂。虽然配置文件内容看起来较多,但基本上只需按照作者的注释进行修改即可。
(在前期规划时我低估了其配置复杂度,断断续续花了一整天时间来研究和调整模板……)
部署流程与配置
services:
homepage:
image: ghcr.io/gethomepage/homepage:latest
container_name: homepage
environment:
HOMEPAGE_ALLOWED_HOSTS: 访问地址 # 请务必填写!格式为:内网IP+端口/域名/域名+端口
# QNAP的admin账户UID/GID通常为 0, 0
# 禁用admin后创建的管理账户通常为 1000, 100
# 可通过SSH输入 `id` 命令自行查看
PUID: 1000
PGID: 100
ports:
- 3000:3000 # 端口号可自行修改
volumes:
- /share/Container/homepage/config:/app/config # 配置文件路径,可自定义
- /share/Container/homepage/images:/app/public/images # 本地背景图库路径,非必需
- /share/Container/homepage/icons:/app/public/icons # 本地图标文件路径,非必需
- /var/run/docker.sock:/var/run/docker.sock:ro
restart: unless-stopped
在内网环境下,按照上述配置部署后,通过浏览器访问 NAS_IP:3000 即可。

初始界面较为简单。与Flare类似,它也不支持在线修改配置,语言等所有设置都需要通过编辑配置文件来完成。
部署完成后,在映射的目录中会生成 settings.yaml、services.yaml、widgets.yaml、bookmarks.yaml 四个核心配置文件供用户修改。


这是我根据自己需求修改后的效果图。因为是测试环境,所以只正确配置了一台NAS的信息。

考虑到配置的复杂性,我直接提供自己整理的基础配置模板,希望能让大家上手更轻松一些。
当然,众口难调。如果你有更个性化的需求,也可以去查阅项目的官方Wiki进行深度配置。我已经在模板配置文件中尽可能详细地对常用选项添加了注释。
配置模板获取方式:下载后,修改这四个YAML文件并替换到你的配置目录即可。对于威联通用户,可以直接在File Station中实时编辑并刷新页面查看效果,非常方便。
备用夸克网盘链接:https://pan.quark.cn/s/c60d7ae9909d
🍉 Heimdall
项目简评与特色
该项目已经有较长时间未更新,因此不太建议作为首要选择。
它同样属于简约风格,对许多人来说功能也已足够。只是其操作稍微复杂一些,使用逻辑不太符合国内用户的习惯,在手机端的体验也较为一般。
它支持完全自定义图标(可以使用自带的应用图标库,这点比Sun-Panel稍微方便一些)、修改背景颜色、添加文字说明等。可以将多个应用归类到一个“大标签”下,实现一级、二级分类。同时也支持更换背景图片(但不支持自适应缩放)、更换默认搜索引擎、自定义CSS和JavaScript。项目还提供了一个应用推荐库,方便用户快速添加常见服务。

部署与基本使用
部署代码如下:
services:
heimdall:
image: lscr.io/linuxserver/heimdall:latest
container_name: heimdall
environment:
# QNAP的admin账户UID/GID通常为 0, 0
# 禁用admin后创建的管理账户通常为 1000, 100
# 可通过SSH输入 `id` 命令自行查看
- PUID=0
- PGID=0
- TZ=Asia/Shanghai
volumes:
- /share/Container/heimdall/config:/config # 请改为你的实际存储路径
ports:
- 9080:80 # 避免与宿主机本地80端口冲突
- 9443:443 # 避免与宿主机HTTPS(443)端口冲突
restart: unless-stopped
这里需要特别注意端口映射:如果你通过HTTP协议访问,应使用9080端口;如果通过HTTPS或服务强制HTTPS,则应使用9443端口。也就是说,在内网想通过9443访问,必须在地址栏手动输入 https://。同理,在进行反向代理配置时也需要注意区分HTTP和HTTPS端口。
在内网环境下,按照上文部署后,访问 NAS_IP:9080 即可。首先点击右上角进入“设置”,将语言修改为中文。

然后点击“账户”,修改默认密码,或者创建新的账户。

外观、背景图等其他设置也可以在这里进行调整。

如前所述,它自带了一个图标库。我之前介绍过的常见Docker应用,这里基本都有对应的图标。当然,如果不喜欢也可以自定义上传图标。不确定这个图标库在国内网络环境下能否顺利拉取。

令人意外的是,图标库里居然还有QNAP和OpenWrt的专属图标。最终成品展示如下。关于如何将应用归类到大标签中,这里就不再详细演示了。

🍉 Dashy
项目简评与特色
这是一款相对“重量级”的工具……当初研读其文档就花了相当长的时间。
它的界面风格非常极客化,亮出你的Dashy面板,瞬间能在技术圈里提升“地位”。我最初想折腾这款工具,就是因为第一眼觉得它“真帅”。

但是,它的配置比Homepage还要繁琐,同样需要通过修改YAML配置文件来完成所有定制。
部署与资源指引
关于Dashy的详细部署和配置,请移步我往期的教程文章:
https://post.smzdm.com/p/apmo4p90/
重要注意事项: 配置文件结构复杂,需要耐心学习和调试。

🍉 LinkStack
项目简评与特色
这款也属于简约风格,如果你喜欢链接聚合页的形式,可以尝试一下。我个人当时对这款工具颇有好感。

部署与资源指引
详细的部署教程可以参考往期文章:
https://post.smzdm.com/p/an9pzgv2/
🍉 Homarr
项目简评与特色
我个人感觉它的设计思路比较独特,但当前的版本体验反而不如早期。

它确实有一些新意,例如支持集成视频流媒体信息等。
但在实际试用过程中,遇到的Bug较多,最终我选择了放弃。

部署流程示例
乐于尝试新工具的朋友可以自行测试。
services:
homarr:
container_name: homarr
image: ghcr.io/homarr-labs/homarr:latest
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /share/Container/homarr/appdata:/appdata
environment:
- SECRET_ENCRYPTION_KEY=d299fa7dd646dc5290c414e1a3b4aebe0085fd306c692be8b915da8804a809d2
ports:
- '7575:7575'
上面提供的环境变量 SECRET_ENCRYPTION_KEY 中的密钥是使用浏览器加密API随机生成的示例。每次生成的密钥都会不同。你可以使用以下命令在服务器上自行生成一个密钥:
openssl rand -hex 32
🍉 总结与选择建议
综上所述,以上几款服务导航面板各有其鲜明的特点与适用场景:
追求轻量、开箱即用、且移动端适配优秀:Sun-Panel 几乎是当下的首选,也是我目前最推荐的项目。
偏爱极简风格、习惯纯文本配置:可以尝试 Flare。
需要模块丰富、功能高度自定义、并希望集成API状态监控:Homepage 无疑是当前功能最全面的选择。
青睐极客风格,希望面板科技感与“B格”十足:Dashy 能够将这一点拉到最满。
NAS的魅力远不止于数据存储。随着部署的服务日益增多,一个清晰、直观的导航面板不仅能极大提升操作效率,也能让你对整个系统的运行状态更有掌控感。如果你还在依靠记忆来访问那些复杂的反向代理域名,不妨从上述仪表盘中选择一款上车,让上网和管理变得更轻松、更条理,从此不再迷路。