自建 Umami 网站访问量统计系统

项目介绍

项目地址:Umami

UMAMI 基于 *Node.js 开发,并且支持 MySQLPostgresql 等数据库存储方式,可以将数据掌握在自己手中。并且 UMAMI 还提供了非常详细的流量分析可视化的界面,UI 体验以及统计准确度十分不错。

官方文档:Umami Docs

部署

本文以宝塔面板部署为教程。
由于 Umami 基于Node.js 开发,采用 MySQL 或 Postgresql 数据库存储数据,所以配置要求如下:

  • Node.js 12 或更高的版本

  • 服务器上安装了 MySQL 或 Postgresql

安装 Yarn

1
npm install -g yarn

获取源代码并安装软件包

1
2
3
4
5
6
7
git clone https://github.com/umami-software/umami.git
cd umami

#国内服务器此步骤由于 Node.js 没有大陆节点,速度较慢。请耐心等待
#千万不要使用淘宝的 registry 镜像源!!!!!!!!
#否则安装依赖会出错!!!!!!!
yarn install

配置 umami

创建数据库

打开宝塔面板,点击左侧 数据库->添加数据库。输入数据库相关信息即可。

配置 .env 文件

umami 文件夹中新建一个名为 .env 的文件
文件配置信息如下:

1
2
DATABASE_URL=mysql://用户名:密码@localhost:3306/库名
HASH_SALT=roywang (加密字符 随机即可)

构建应用程序

1
2
3
#千万不要使用淘宝的 registry 镜像源!!!!!!!!
#否则安装依赖会出错!!!!!!!
yarn build

创建数据库表

1
yarn update-db

启动应用程序

1
yarn start

默认情况下,这将启动应用程序。您将需要来自 Web 服务器的代理请求或更改端口以直接为应用程序提供服务。http://localhost:3000

默认用户名:admin 默认密码:umami


运行 Umami

您可以简单地运行以启动Umami,但强烈建议您使用像PM2这样的进程管理器,它将为您处理重新启动。

使用 PM2 运行:

安装 PM2:

1
yarn global add pm2

配置 PM2 启动 Umami

1
2
3
4
5
6
#进入 Umami安装目录
cd umami

pm2 start yarn --name umami -- start
pm2 startup
pm2 save

设置网站反代

宝塔新建站点 -> 打开设置 - > 反向代理 ->添加反向代理

目标 URL 填写:http://127.0.0.1:3000

配置站点

登录 Umami

默认用户名:admin 默认密码:umami
umami
添加站点,并将代码放到网站 部分来收集数据。

获取更新

为了获取最新更新,请首先从 git 存储库中提取更改:

1
git pull

然后安装任何新的或更新的依赖项:

1
yarn install

重新生成项目:

1
yarn build

最后,启动应用程序:

1
yarn start