部署Umami统计系统全套教程

Google Analytics 收集的信息过多且数据不在自己手里。这里就用 Umami 代替

 

20240405010851887-af0fd882-8eea-482d-b5e3-22b262a8a4f4[1]

【官网】https://umami.is/

【Github】https://github.com/umami-software/umami

安装

支持两个数据库:Mysql 和 Postgresql

mysql 5.7 版本的注意

20240405010944326-e9e0ae2e-3779-480b-805e-776fc3d37dd0[1]

 

这个 sql 文件中的一些语句与 5.7 版本不兼容,在 run build 时会出错

可以参考 Github issues:https://github.com/umami-software/umami/issues/2118

需要将 migration.sql 中的

-- AlterTable
ALTER TABLE `event_data` RENAME COLUMN `event_data_type` TO `data_type`;
ALTER TABLE `event_data` RENAME COLUMN `event_date_value` TO `date_value`;
ALTER TABLE `event_data` RENAME COLUMN `event_id` TO `event_data_id`;
ALTER TABLE `event_data` RENAME COLUMN `event_numeric_value` TO `number_value`;
ALTER TABLE `event_data` RENAME COLUMN `event_string_value` TO `string_value`;

替换为

-- RenameColumns
ALTER TABLE `event_data` ADD COLUMN data_type INTEGER UNSIGNED AFTER event_data_type;
ALTER TABLE `event_data` ADD COLUMN date_value TIMESTAMP(0) AFTER event_date_value;
ALTER TABLE `event_data` ADD COLUMN event_data_id VARCHAR(36) AFTER event_id;
ALTER TABLE `event_data` ADD COLUMN number_value DECIMAL(19, 4) AFTER event_numeric_value;
ALTER TABLE `event_data` ADD COLUMN string_value VARCHAR(500) AFTER event_string_value;

UPDATE event_data
SET data_type = event_data_type,
    date_value = event_date_value,
    event_data_id = event_id,
    number_value = event_numeric_value,
    string_value = event_string_value;

ALTER TABLE `event_data` MODIFY data_type INTEGER UNSIGNED NOT NULL;
ALTER TABLE `event_data` MODIFY event_data_id VARCHAR(36) NOT NULL;

ALTER TABLE `event_data` DROP COLUMN event_data_type;
ALTER TABLE `event_data` DROP COLUMN event_date_value;
ALTER TABLE `event_data` DROP COLUMN event_id;
ALTER TABLE `event_data` DROP COLUMN event_numeric_value;
ALTER TABLE `event_data` DROP COLUMN event_string_value;

ALTER TABLE `event_data` ADD PRIMARY KEY(event_data_id);

在跟目录新建一个 .env 文件,里面填写数据库链接

DATABASE_URL=mysql://xxx:xxx@xxx:3306/umami
HASH_SALT=xxx

构建

yarn install

注意端口,默认是 3000,想改的化,记得在 package.json 中 scripts 中 start 命令后面加 -p xxxx

"scripts": {
  "dev": "next dev",
  "build": "npm-run-all check-env build-db check-db build-tracker build-geo build-app",
  "start": "next start -p 1111",

打包

yarn run build

后面会卡住一会儿,要下载 城市 IP 的数据【GeoLite2-City.mmdb】,有 60 MB 左右

运行

npm install -g pm2
// 然后执行
pm2 start npm --name umami -- start

使用

登陆账号和密码:admin     umami

创建网站信息

20240405011213807-b9fa459e-7b9f-4178-a662-5a274387170f[1]

然后把跟踪代码放到网站里面

例如(站主是 Nuxt 3)

20240405011236630-0ebf966e-9397-44ca-9e78-9d7fd90aa54a[1]

 

感谢您的来访,获取更多精彩文章请收藏本站。

THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容