Docker 搭建 umami 网站统计工具
umami 是一款开源、简单、轻量级和高性能的网站统计分析工具,可以自行部署到服务器上并支持无限数量的网站统计,支持 Docker 快速部署。
官网:https://umami.is/
Github:https://github.com/umami-software/umami
在线预览:https://analytics.umami.is/share/LGazGOecbDtaIwDr/umami.is
使用 Docker 安装
克隆仓库:
1 | git clone https://github.com/umami-software/umami |
在根目录执行命令,此命令默认使用 PostgreSQL 数据库。
1 | docker compose up -d |
之后会占用本机的 3000 端口启动 umami,使用 IP 地址加端口可以直接访问。
配置 Nginx 反向代理
实际部署时我们不应该直接使用 IP + 端口访问,通常需要配置反向代理并启用 SSL。
1 | server { |
以上配置中将 ssl_certificate
和 ssl_certificate_key
替换为你的 SSL 证书路径,域名改为你已经解析好的域名。之后就可以通过域名访问刚刚部署的 umami,默认的用户名密码是 admin/umami
,登录之后要立即修改为复杂密码。
升级
1 | docker compose pull |
每次升级之前的旧版本镜像是无用的,留着会占用磁盘空间。可以使用 docker image prune -a
命令删除之前的旧版本镜像。
部署到 Hexo
有些 Hexo 主题没有集成 umami 功能,需要我们手动集成。为了避免修改主题,我们可以使用 Hexo 5 的注入器将统计脚本插入到 head
标签中。
首先需要在博客根目录下建立 scripts
文件夹,然后在里面创建一个 umami.js
文件,写入以下注入代码,将第二个参数替换为你的跟踪代码。
1 | hexo.extend.injector.register('body_end', '<script>...</script>', 'default'); |
默认生成的跟踪代码部署到 Hexo 中后,如果使用 hexo server
命令启动本地服务预览时也会统计数据。要解决这个问题可以改下跟踪代码增加 data-domains
属性。填写你的网站域名,可使用英文逗号分隔多个域名。
1 | <script |
Docker 搭建 umami 网站统计工具