效果图, Umami 可以接 mysql/pg。
我的站点 https://gooseforum.online 源码 https://github.com/leancodebox/GooseForum
umami官网 https://umami.is/
这里主要分享一下docker部署,如果需要自己编译部署也可以在官网查看一下。https://umami.is/
我的服务器用的 1panel。使用 1panel 的同学可以直接应用商店安装即可。如果不是使用 1panel 的也可以参考 1panel 的 docker compsoe 配置文件安装。这里提一下我安装的时候 1panel 的国内服务器貌似使用了腾讯云的docker镜像也很慢,过程中一度让我以为出问题。后来手动执行docker 命令才发现下载速度很慢,如果用国内腾讯云服务器的同学安装的时候不用着急。
如果不熟悉 docker 使用过的同学,也可以使用 trae / cursor 等工具,让ai帮忙生成本地 docker compose 文件,本地部署演练一下再部署到服务器,只需要配置好数据库和一些密钥相关配置,部署起来还是很简单的。
除了刚才提到的网速问题,这里再提一个另一个坑。就是如果想要配置域名子路径的话需要自己打包编译,如果用已经编译发布过的 umami 镜像是不可以,就是 umami 的官网 env 配置写的是支持 base_path ,但是许多镜像是打包后的产物,所以 base_path 这个变量是不会在打包过程中再起作用了。所以如果有强子目录部署诉求的话,推荐自己打包,因为我这边发现1pancel使用的官方docker镜像是不支持base_path 就采用的子域名部署的。
部署后的默认管理员的账号密码是 admin 和 umami 登陆后记得修改账号和密码。
登陆后,umami 是支持多语言的,可以在右上角切换为中文。
如果可以正常访问了,那么现在就可以开始准备设置需要接入的网站。这里点击,填写网站名和域名,域名不需要加http
添加后,点击设置,跟踪代码,即可获取跟踪的js代码。
这个代码的使用也非常简单。就拿我的部署 Gooseforum 举例。只要在需要追踪统计的网页加入这段html代码即可,需要开源项目也支持设置html注入。
设置完毕后,可以访问一下自己的站点,查看浏览器访问的html源码有没有 umami的跟踪代码(就是复制的那串html)。如果有,直接访问刷新一下自己的站点,就可以去 umami 后台查看访问记录了。整个过程,如果没有网速问题的话,部署到应用应该1小时内即可完成。(这里我1panel接入了腾讯云dns账户,所以子域名和https的配置没有超过1分钟)。
感兴趣的同学可以试一下这个,占用资源不大,数据也完全在自己手中。