

























Umami 是一款开源的、注重隐私的网络分析工具,可作为 Google Analytics 的替代方案。它提供对网站流量、用户行为和性能的重要洞察,同时优先考虑数据隐私。
与许多传统分析平台不同,Umami 不会收集或存储个人数据,从而避免了使用 cookie 的需求,并且符合 GDPR 和 PECR 标准。
Umami 设计轻巧且易于设置,可以自托管,让用户完全控制自己的数据。
有几种不同的方法可以安装 Umami。
Docker 镜像。要求
bash
git clone https://github.com/Umami-software/Umami.git
cd umami
git checkout v2
yarn install.env 的文件md
.
│ ├──src
├── .env # 配置文件
├── package.json
├── README.md
├── yarn.lock连接 url 格式如下:
提示
username mypassword 和 mydb 替换成实际的数据库用户名、密码和数据库名
bash
DATABASE_URL=postgresql://username:mypassword@localhost:5432/mydb
DATABASE_URL=mysql://username:mypassword@localhost:3306/mydb我的配置如下:
bash
DATABASE_URL=mysql://root:root@localhost:3306/umami注意
Umami v3 不再支持 MySQL 数据库,仅支持 PostgreSQLMySQL 连接

双击umami打开链接右键新建数据库

提示
首次运行构建时,它将在数据库中创建所有必需的数据库表。它还将创建一个用户名为 admin、密码为 umami 的登录帐户。

您可以直接运行 yarn start 来启动 Umami,但强烈建议您使用像 PM2 这样的进程管理器来为您处理重启。
要使用 PM2 运行:
bash
yarn global add pm2
cd umami
pm2 start yarn --name umami -- start
pm2 startup
pm2 save
添加完成后,点击编辑-跟踪代码获取页面埋点链接 

将该链接添加到你网站的页面头部或者底部即可
ts
[
"script",
{
src: "http://localhost:3000/script.js",
"data-website-id": "7a2817d2-xxxx-xxxx-xxxx-8401f59642f1",
defer: "defer",
},
],
V3源代码安装教程请参考 Umami 源代码安装-V3 版本
bash
sudo apt install docker-compose接着安装完成后进行下面操作
bash
# 进入服务器目录 /root/下
cd /root
# 新建umami文件夹,并进入umami文件夹
mkdir umami
cd umami
# 拉取 PostgreSQL 支持的 Umami Docker 映像
docker pull ghcr.io/umami-software/umami:postgresql-latest
# 新建doker-compose.yaml文件并进行编辑
vi docker-compose.yaml复制粘贴以下内容,完成后按下 ESC 键,然后输入:wq 保存
提示
里面 ports 是后面进行反向代理的端口,可以自行设置
yaml
---
version: "3"
services:
umami:
image: ghcr.io/umami-software/umami:postgresql-latest
ports:
- "3300: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
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:bash
docker-compose ps -a
# 看到下面输出表示成功
[root@VM-4-16-centos umami]# docker-compose ps -a
Name Command State Ports
--------------------------------------------------------------------------------------------------------
umami_db_1 docker-entrypoint.sh postgres Up (healthy) 5432/tcp
umami_umami_1 docker-entrypoint.sh yarn ... Up 0.0.0.0:3300->3000/tcp,:::3300->3000/tcp打开浏览器,访问 http://localhost:3300。 (这里用自己云服务器 ip 访问: http://云服务器公网 ip:3300) 默认管理员账号和密码: 用户名:admin 密码:umami
注意
我的反向代理使用的是 Nginx,如果你使用的是其他的反向代理,请自行修改。路径在:/etc/nginx/conf.d/umami.conf,以你为准
bash
# umami.seasir.top 域名的 HTTP -> HTTPS 重定向
server {
listen 80;
listen [::]:80;
server_name umami.seasir.top;
# 配置 HTTP 到 HTTPS 的重定向
return 301 http://$host$request_uri;
}
# umami.seasir.top 域名的 HTTPS 反向代理
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name umami.seasir.top;
location / {
proxy_pass http://你的云服务器ip:3300/; # 反向代理到实际 umami 服务
include /etc/nginx/common_configs/common_proxy_params.conf; # 引入反向代理公用参数
}
}bash
cd umami
docker-compose downbash
cd umami
docker-compose up -dbash
cd umami
docker-compose down -vbash
cd umami
docker-compose pullNeon PostgreSQL 是一个基于 PostgreSQL 构建的 云原生、Serverless(无服务器)数据库服务,由 Neon.tech 公司提供。
申请 Neon PostgreSQL 账号
创建免费 Neon PostgreSQL 数据库,区域推荐选择离 Umami 后端(Vercel / Netlify / AWS Lambda / VPS)地理位置较近的数据中心以获得更低的数据库连接延迟。如果不清楚自己的后端在哪个云服务器和地区,可选择 新加坡地区

Projects找到刚刚创建的项目,进入Dashboard页面,点击Connect按钮,接着点击PostgreSQL按钮复制数据库链接并妥善保管,后面部署需要用到!然后点击

Vercel DeploySettings - Environment Variables,添加环境变量 DATABASE_URL,值为前面记录的数据库连接字符串,最后点击Save保存注意
这里只复制数据库链接单引号就行,不要完整复制!

Deployments , 然后在任意一项后面点击更多(三个点) , 然后点击 Redeploy , 最后点击下面的 Redeploy 等待部署完成,部署完成即可
参考 源代码安装步骤的前端配置
排除我自己的访问。您想访问自己的网站,但又不想让访问记录出现在您的统计数据中。为此,您需要在浏览器中添加一项设置。
在浏览器中打开开发者控制台:Settings -> More tools -> Developer tools
在控制台中,输入以下代码并点击 Enter:
bash
localStorage.setItem('umami.disabled', 1);此设置适用于每个网站,因此您需要对要排除的每个网站执行此操作。
要删除设置,请输入以下代码并点击 Enter:
bash
localStorage.removeItem('umami.disabled');检查一下是否添加到网站,并且是否有页面埋点链接添加。可以通过 f12 搜索 umami 查看是否添加成功。如有有添加成功需要设置下反向代理

此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。