自建网站统计工具 Umami 替代 Google Analytics
前言
Umami 是一款开源的网站统计工具,与 Google Analytics 相比更加的轻量,且不会收集网站用户的个人信息。同时,Umami 的仪表盘界面简洁,UI 精美,方便我们查看网站的历史统计数据。
Umami 使用方式也与 Google Analytics 十分类似,只需要在需要统计的网站中引入 Umami 的脚本就可以完成统计。
安装
尽管 Umami 提供了官方服务,但是更加推荐自己部署,私有化存储网站的统计数据。
Umami 基于 Next.js,如果有 Node.js 环境的可以直接使用源代码进行部署;没有 Node.js 环境或者不熟悉 Node.js 的则可以通过 Docker Compose 进行部署。
Umami 的数据库支持 MySQL 与 PostgreSQL,选择其中一种即可
本文以使用 PostgreSQL 数据库并采用 Docker Compose 方式部署为例
TIP
如果数据库检测shi'bai,可以在环境变量中添加 SKIP_DB_CHECK: 1 跳过数据库检测
yaml
version: '3'
services:
umami:
image: ghcr.io/umami-software/umami:postgresql-latest
ports:
- "3000:3000"
environment:
DATABASE_URL: postgresql://umami:umami@db:5432/umami
DATABASE_TYPE: postgresql
APP_SECRET: replace-me-with-a-random-string
depends_on:
db:
condition: service_healthy
restart: always
healthcheck:
test: ["CMD-SHELL", "curl http://localhost:3000/api/heartbeat"]
interval: 5s
timeout: 5s
retries: 5
db:
image: postgres:15-alpine
environment:
POSTGRES_DB: umami
POSTGRES_USER: umami
POSTGRES_PASSWORD: umami
volumes:
- umami-db-data:/var/lib/postgresql/data
restart: always
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 5s
timeout: 5s
retries: 5
volumes:
umami-db-data:
使用
- 通过
http://ip:3000
访问 Umami 仪表盘(默认用户名 admin,默认密码 umami)
- 进入后台后,点击右上角的头像,选择 Profile,修改登录密码以及语言
- 点击上方的 Settings,修改用户名
- 然后点击 Websites,添加需要监控的网站
- 添加完成后,点击 Tracking code,会有一个 JS 脚本,将其添加到你的网站中,即可实现网站数据的统计
- 稍等片刻,返回 Dashboard 中,就可以看到实时的统计信息
预览: