第 118 期 · 自托管仪表盘
把 RSS、天气、行情、Docker 状态塞进一个网页:Glance 值得折腾吗?
一、这个项目是做什么的
Glance 是一个轻量、高度可定制的自托管仪表盘,用单一页面聚合你关心的“信息流”。它内置几十种 widget:RSS 订阅、Subreddit 帖子、Hacker News、天气、YouTube 频道更新、Twitch 直播、市场行情、Docker 容器状态、服务器资源占用,以及自定义 HTML / iframe / 自定义 API 等扩展。
整个项目几乎零前端框架——纯原生 JS、单文件二进制小于 20MB、内存占用极低,页面默认加载约 1 秒。配置全部走 YAML,支持多页面 / 多标签页、自定义 CSS 与主题。
二、怎么用(安装与命令均逐字取自官方 README)
官方推荐用 Docker Compose。先拉取官方模板目录:
mkdir glance && cd glance && curl -sL https://github.com/glanceapp/docker-compose-template/archive/refs/heads/main.tar.gz | tar -xzf - --strip-components 2
然后按需要改 docker-compose.yml(端口、挂载)、config/home.yml(首页组件)、config/glance.yml(主题 / 多页),就绪后:
docker compose up -d
查看日志:
docker compose logs
如果不想用模板,手写最小 docker-compose.yml(镜像 glanceapp/glance,端口 8080 映射,挂载 ./config):
services:
glance:
container_name: glance
image: glanceapp/glance
restart: unless-stopped
volumes:
- ./config:/app/config
ports:
- 8080:8080
再拉取起始配置:
mkdir config && wget -O config/glance.yml https://raw.githubusercontent.com/glanceapp/glance/refs/heads/main/docs/glance.yml
然后 docker compose up -d 即可。
想直接跑二进制(Linux / macOS / Windows 均提供预编译包,默认读同目录 glance.yml,可用 --config 指定):
/opt/glance/glance --config /etc/glance.yml
从源码构建需 Go >= 1.23:
go build -o build/glance .
或临时跑:
go run .
三、优点和缺点
优点:
· 真·轻量:单二进制 <20MB、极少依赖、无重型前端框架,树莓派也能跑;
· 配置即代码:纯 YAML,改完刷新即生效,方便版本管理;
· 信息流覆盖面广,且支持自定义 widget(iframe / html / custom-api),可接任意内部服务;
· 移动端优化到位,出门也能看。
缺点(结合官方 FAQ 与社区 issue 的真实反馈):
· 不自动刷新:页面信息只在“加载时”抓取并缓存,没有后台定时拉取,想看最新数据得手动刷新或用浏览器自动刷新插件(社区呼声最高的需求 #327 至今未内置);
· 无内置登录鉴权:默认谁都能访问,公网暴露时必须自己套反向代理 + 鉴权(如 Caddy / Traefik + Authelia),否则 /assets/ 等静态资源也会被未授权读取(issue #917);
· 强依赖外网数据源:Reddit 子版块偶发 403(#1016)、YouTube 个别频道视频加载失败(#910)、开了 Pi-hole / AdGuard 这类广告 DNS 时容易触发限流超时(#290);
· 页面加载速度被最慢的那个外部 widget 拖着走(#304)。
四、最终能达到什么效果
部署好之后,你得到一个完全属于自己、可在手机和桌面随时打开的“信息起点页”:左边看今天要读的博客和 HN 热帖,中间看关注的 YouTube 与行情,右边看家里 Docker 容器和天气。它不取代监控告警系统,但能把“每天顺手瞄一眼”的成本降到最低。
不适合谁:想要真正实时监控大屏、需要内置账号体系、或不想碰配置文件的“开箱即用”用户。
三个坑:① 公网暴露前一定加反向代理鉴权;② 受不了数据不自动刷新的,先装个浏览器自动刷新插件;③ 用了广告 DNS 的,记得调高其速率上限,否则 widget 会超时。
下期预告:自托管监控三选一——Glance(信息聚合)对比 Beszel / Netdata(真·实时监控),讲清各自边界与选型。
数据脚注:仓库 github.com/glanceapp/glance;许可证 AGPL-3.0(强 Copyleft,修改并经网络分发须开源,可商用);配置与安装命令均逐字取自官方 README 与 docs/glance.yml;抓取时间 2026-09-15。
