作者:羊刀仙
NAS 用久了,就会在使用过程中了解并安装很多 Docker 服务,一台 NAS 装十几二十个应用程序应该很常见。
QB、Emby、Jellyfin、Transmission、Plex、NASTOOL、IT-tools、uptime-kuma、ddns-go、Navidrome、Lcuky、Alist、reader 等等各类实用软件工具。
不知道各位,我几乎为每款服务都做了反向代理,并通过二级域名进行访问。
虽然主域名和监听端口固定,但这么多前缀也蛮难的。。。除了 NAS 的 WEB,以及常用的几个服务,很多时候要先打开 Lucky 查看域名后才能访问。。。
为了解决这一窘境,本期来介绍几个项目,可以承担起 NAS、服务器导服务导航的重任,有的除了轻量易用之外,有些还附带其他实用功能,也可以将其作为浏览器首页。
以威联通 NAS 为例,通过 Docker Compose 进行部署。
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 厂家都不同,例如威联通 /share/CACHEDEV1_DATA1,/share/CACHEDEV2_DATA,或者是具体文件 - /share/Multimedia:/os,- /share/Container/data:/os。
如按照上文部署,web 输入NAS_IP:3022即可访问服务。
默认账号密码
账号:admin@sun.cc 密码:12345678
右上角的图标点击可以切换内外网环境,这点很不错。
右上角的四叶草图标点击可以进行更多设置,相当简单和便捷化。
小配置了一下。自带的搜索,是可以快速定位 APP 的。
换换壁纸。
如果嫌背景太花,可以做模糊处理,这个模糊程度也都支持自由调节,背景图也会根据窗口大小自适应缩放。
虽然 1.3.0 版本之后推出了 Pro 功能,但基础版很够用,十分推荐此项目。
Flare
✅ 简评
国人作者,有段时间不更了,估计是已经趋近完美,没啥能更的内容。
Flare 拥有更简单透明的数据策略,使用文本格式来存储书签。简约、快速、轻量且超级易于安装和使用。支持欢迎词、时间日期、天气,编辑简单,手机适配完美。
作者是这样形容的:
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 command: flare ports: - 5005:5005 # 左侧端口自行修改 volumes: - /share/Container/flare/app:/app # 左侧路径自行修改
内网环境下,按照上文代码,WEB 输入 NAS_IP:5005 即可访问。
上文也说过,需要在 " 应用书签 "、" 分类书签 " 以及 " 程序配置 " 的数据文件中配置链接名称、链接地址之类的东西,当然也包括 icon(图标)。这点倒是与过去我分享过的 Dashy 有些类似。
更多详细提升体验的操作,我建议参照作者大大的教程。
在 GHUB 搜索 soulteary/flare,点击右侧的链接即可。喜欢这种极简风的朋友可以部署起来。
Homepage
这里我在部署模版的书签部分塞了个小福利,请看本节最后的传送门。
✅ 简评
功能应该是最为强大的。界面布局在简约和花里胡哨之间吧,显示的内容和具备的功能也多,看着很饱满,手机端支持也很不错。
部署也不算难,部署内容看着很多,但也就跟着作者注解改动即可。
(前天做大纲的时候是我轻敌了,断断续续花了一天搞模版。。。)
✅ 部署流程
services: homepage: image: ghcr.io/gethomepage/homepage:latest container_name: homepage environment: HOMEPAGE_ALLOWED_HOSTS: 访问地址 # 内网 IP+ 端口 / 域名 / 域名 + 端口,必须填! # QNAP admin 账户为 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
内网环境下,按照上文代码,WEB 输入 NAS_IP:3000 即可访问。
界面简陋,与 Flare 相同也不支持在线修改,包括语言等配置需要编辑配置文件。
部署好后,在映射文件目录有 settings.yaml,service.yaml,widgets.yaml,bookmarks.yaml 四个配置文件供我们配置修改。
本节开头就是我修改后的效果图。因为是测试机,所以就填写了一个正确配置,就是那台威联通 TS-673A。
全搞完实在是累,所以我还是直接放配置模版吧,大家整起来会轻松不少。
众口难调,如果你有不一样的需求,也可以去查看 wiki 自行配置。已经在配置文件中尽可能详细把用到的变量做了注释。
传送门在此~下载后把这个四个文件修改后替换即可。威联通比较方便,可以直接在 NAS 实时修改并刷新页面查看效果。备用夸克。
Heimdall
✅ 简评
已经有段时间不更新,不太建议用。
也属于简约派,对很多人来说也够用,就是操作要稍微复杂些,使用逻辑不太符合国人习惯,手机端不舒服。
可完全自定义图标(可选择用自带应用图标库,这点要比 sun-panel 稍微方便些)、改背景色、文字说明等。多应用可以创建大标签,也就是一级二级分类的意思。也支持更换背景图片(不能自适应)、更换搜索引擎、自定义 CSS、自定义 JavaScript。提供了一个应用库推荐,可以部署到 NAS 或服务器上。
✅ 部署使用
代码如下:
services: heimdall: image: lscr.io/linuxserver/heimdall:latest container_name: heimdall environment: # QNAP admin 账户为 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 端口冲突 restart: unless-stopped
这里提示,如果你本地 http 访问使用 9080 端口,如果 https 或强制 https 则使用 9443,也就是说你内网想通过 9443 访问必须手打 https。同理进行反向代理时也要注意区分!
内网环境下,按照上文代码,WEB 输入 NAS_IP:9080 即可访问。先点击设置,修改语言为中文。
然后点击账户,修改密码,或者新建账户。
外观背景图,等其他都可以在这边设置。
上面说的自带图标库,过去我介绍过的 Docker 这里基本都有图标对应,但有些我不太喜欢,不过好在也支持自定义上传。不晓得这个图标纯国内网络能否成功拉取。
没想到还有 QNAP 和 openwrt 的图标。成品展示如下。关于大标签集合我就不整了。
Dashy
✅ 简评
太重量级了。。。当时看文档就花了蛮久。
界面非常极客,亮出你的面板,瞬间群地位 +1。我之所以想折腾这款,就是一眼帅。
但是吧,比 homepage 还要麻烦,也是需要各种修改配置。
✅ 部署使用
这个就请移步往期教程吧:
注意事项:
LinkStack
✅ 简评
这个也属于简约类,喜欢这种形式可以试试,我当时是蛮喜欢这款的。
✅ 部署使用
往期教程:
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 无疑是当前最全能的选手。
极客向的 Dashy,B 格则可一拉到最满。
NAS 的魅力不止在于存储,随着服务增多,一个清晰直观的面板不仅提升效率,也能让整个系统运维更有掌控感。如果你还在靠脑子记反代域名,不妨选一个仪表盘面板上车,轻松上网,从此不再迷路。
登录后才可以发布评论哦
打开小程序可以发布评论哦