[Umami][1]是一个在Github有26.8k Star的开源网络分析工具项目,根据官网介绍:
Umami 是一个开源、注重隐私的网络分析工具,作为 Google Analytics 的替代品。它提供了对网站流量、用户行为和性能的基本洞察,同时优先考虑数据隐私。 与许多传统的分析平台不同,Umami 不收集或存储个人数据,避免了对 cookie 的需求,并且符合 GDPR 和 PECR 标准。 Umami 设计为轻量级且易于设置,可以自我托管,让用户完全控制自己的数据。
综合考虑,计划给本站加入Umami统计。下面是搭建Umami和添加到网站的过程记录。
Step1 Docker compose部署
Umami支持docker部署,官网给出docker run的命令如下。 用PostgreSQL: docker pull docker.umami.is/umami-software/umami:postgresql-latest or 用MySQL: docker pull docker.umami.is/umami-software/umami:mysql-latest 如果你跟我一样,更喜欢docker compose,那么可以参考如下的docker-compose.yml文件
---
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
init: true
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:
将这个文件保存为docker-compose.yml,存放到你的docker下Umami文件夹内,输入
sudo docker compose up -d
就可以通过IP:3000端口访问啦,初始用户名admin,密码umami,切记登陆后修改用户名和密码。 当然你也可以通过Nginx或者Caddy反代3000端口,实现https访问,小白建议使用Caddy,3行代码解决:
sudo nano /etc/caddy/Caddyfile
在最后加入
修改为你的域名 {
reverse_proxy localhost:3000
}
搭建到这里就结束了
Step2 给网站加入Umami统计代码
通过你反代的域名访问Umami:
-
右上角修改语言为中文:

-
设置-用户-编辑,修改用户名和密码:

-
设置-网站-添加网站-编辑,添加网站并查看统计代码:

-
上一步进入编辑后,点击跟踪代码,复制统计代码:

Step3 将统计代码加入到网站header.php里,放到上面就可以了。
返回Umami首页,就能看到统计数据啦:

总得来说,Umami搭建、设置简单,适合小白使用,当然得注意部分广告拦截插件会拦截Umami,导致你无法访问它官网,注意放行。 [1]: https://github.com/umami-software/umami