docker compose 部署Umami

朱治龙
2023-10-30 / 0 评论 / 101 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2023年12月18日,已超过332天没有更新,若内容或图片失效,请留言反馈。

很长一段时间是用的cnzz做的网站访问统计,功能强大,分析结果对于小白用户也超级友好,自从被阿里收购后,整合成Umeng的一部分勉强还能用,但是自从开启收费(收割用户)模式后,高昂的价格,无疑把我们这种小白个人用户完全隔离在外了。

然后用了一段时间的百度统计,感觉也是不尽如人意,然后就只好另辟蹊径,调研了市面主流的流量统计工具(也就调研了Matomo 和Umami)后,选择了Umami 作为个人流量统计工具,主要是Matomo不少明细数据是存储的Binary数据,不便于通过SQL直观的查看,相对于Matomo而言,Umami 算是轻量级别的,UI 界面也更现代化。

Umami 支持 PostgreSQL 和 MySQL 两种数据库,分别对应不同的Docker 镜像。

ProstgreSQL:

docker pull ghcr.io/umami-software/umami:postgresql-latest

MySQL:

docker pull ghcr.io/umami-software/umami:mysql-latest

由于我的服务器上面已安装 MySQL 客户端,就直接采用 MySQL 的镜像。

ghcr.io 是 GitHub 的 Docker 镜像仓库,国内环境可能在pull 时会碰到些网络方面的问题,我是通过一台境外的服务器pull 后,然后 push 到本人的 Docker 私服进行下载的,也可以采用导出备份后在导入的方式。如果你在pull过程中也存在这方面网络的问题的话,也推荐使用这个方式。

docker-compose.yml

version: "3.8"
services:
  umami:
    image: ghcr.io/umami-software/umami:mysql-latest
#    image: hub.work.zhuzhilong.com/apps/umami:mysql
    container_name: umami
    restart: unless-stopped
    volumes:
      - ../hosts:/etc/hosts
    environment:
      - DATABASE_URL=mysql://DB_USERNAME:DB_PASSWORD@DB_HOST:DB_PORT/umami
      - DATABASE_TYPE=mysql
      - APP_SECRET=umami2023
      - TZ=Asia/Shanghai
    networks:
      - net-zzl
    ports:
      - 8202:3000
networks:
  net-zzl:
    name: bridge_zzl
    external: true

使用 docker compose up -d 启动后,可使用默认的管理员账号登录:

  • 用户名:admin
  • 密码:umami

登录后即可修改密码及添加站点了。
以下是整合后的部分界面截图:

主界面
详细界面

顺便说下,umami的表结构比较简单,访问用户的IP信息都没有存表,如果有复杂运营场景的话,还是推荐使用 Matomo 之类的功能更强大的工具。

当前版本(2.8.0)只有11张表:
Umami 的数据表


应用升级

近日登录umami时提示最新发布了2.9.0 版本,而根据更新日志中的内容有提到可以查看访客的城市信息了,便及时更新了下,使用docker compose 的方式更新超级简单,主要执行如下命令:

docker compose pull
docker compose up --force-recreate

提示数据库更新成功:
lqan2ah1.png
然后重启应用即可

0

评论 (0)

取消