AI摘要

本文介绍了如何部署Umami网站访问统计工具,包括创建网站、配置SSL证书、部署Umami、配置反向代理等步骤。Umami是一个开源、注重隐私的网站访问统计工具,提供了简洁直观的界面和多种统计维度,是Google Analytics的轻量级替代方案。作者还分享了在部署过程中遇到的两个问题及其解决方案,并提供了参考链接。

前言

关于访客统计,我最早用的是VisitorLogger插件,但是它的后台统计图不显示,于是我就二次开发为VisitorLoggerPro,修复完善后台统计图并且加上了网站独立页面模板。但是我觉得功能还是不够,直到我看到了Umami

简介

Umami 是一个开源的、注重隐私的网站访问统计工具。它提供了简洁直观的界面,支持多种统计维度,是 Google Analytics 的轻量级替代方案。

部署要求

  • 支持 Docker 环境
  • 支持 Nginx 反向代理(我选择使用docker,所以这个就无所谓了)

部署步骤

1. 创建网站

在宝塔面板中创建新网站,选择纯静态网站类型。记得提前将域名解析到服务器 IP,这样网站才能正常访问。

2. 配置 SSL 证书

在宝塔面板中为网站申请 SSL 证书,推荐使用宝塔Let's Encrypt免费证书。

3. 部署 Umami

克隆代码仓库

git clone https://github.com/umami-software/umami.git

如果GitHub克隆异常缓慢,可以直接克隆我的gitee镜像仓库:

git clone https://gitee.com/wx6765/umami.git

连接服务器终端,使用下面的命令进入到你创建的域名文件夹下然后进行克隆(方便管理)

cd /www/wwwroot/你的检测网站域名

三秒钟就结束了,前所未有的爽!

配置 Docker Compose

创建 docker-compose.yml 文件,内容如下:

展开查看具体修改

version: '3'
services:
  umami:
    image: ghcr.io/umami-software/umami:postgresql-latest
    ports:
      - "3000: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
    healthcheck:
      test: ["CMD-SHELL", "curl http://localhost:3000/api/heartbeat"]
      interval: 5s
      timeout: 5s
      retries: 5

  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:


蓝色框里的都可以改,建议改数据库密码即可

启动服务

docker-compose up -d

构建了将近一个小时,还好成功了
漫长的等待

在宝塔面板中查看容器,要启动的话需要放行3000端口

4. 配置反向代理

在宝塔面板中配置反向代理,将域名请求转发到 http://127.0.0.1:3000。这样就能通过域名访问统计面板了。
添加反代

使用指南

初始登录

访问你的域名,使用默认账号 admin 和密码 umami 登录。为了安全起见,建议登录后立即修改默认密码。
登录

添加统计网站

进入仪表板后,在设置中添加需要统计的网站。添加完成后,系统会生成一段跟踪代码,需要将这段代码添加到主题后台的自定义head中。

配置完成

我遇到的两个问题,不知道你们会不会出现

  • 执行docker命令时报错:Segmentation fault,解决办法见 完整步骤
  • 如果遇到umami-umami-1容器无法打开或打开后自动停止,去查看容器umami-db-1的日志,如果是数据库连接错误,比如出现以下错误:
    ✗ Unable to connect to the database: Authentication failed against database server, the provided database credentials for `umami` are not valid.

    这是因为数据库认证失败,如果你改了密码那大概率就是因为这个,需要按以下步骤解决:

  1. 首先停止并删除现有的容器和卷:

    docker-compose down -v
  2. 检查 docker-compose.yml 文件中的数据库配置,确保:

    • DATABASE_URL 中的密码与 POSTGRES_PASSWORD 完全一致
      确保一致
    • 密码不要使用默认的 "umami",建议使用更复杂的密码
  3. 重新启动服务:

    docker-compose up -d

总结

挺好用的,配置也不算很复杂,如果有问题可在评论区留言。

参考链接

如果觉得我的文章对你有用,请随意赞赏
END
本文作者:
文章标题:Typecho博客部署Umami网站访问统计工具
本文地址:https://blog.ybyq.wang/archives/381.html
版权说明:若无注明,本文皆Xuan's blog原创,转载请保留文章出处。