- 介绍 {#1-介绍}
之前和大家介绍过一个网站流量的统计工具------【好玩的Docker项目】搭建一个小而美的网站流量监控------Umami 比较轻量,其实我之前一直用的是今天要介绍的这个统计工具,但是由于之前是用宝塔来搭建的,升级的时候会比较麻烦,而且整个程序功能比较丰富(毕竟是想和谷歌统计相比较的工具),猜想能用上怎么复杂功能的小伙伴也不多,就没介绍,这俩天发现,其实它也可以用docker来完成简单的部署,所以就水一篇文章,分享给大家。
1.1 特点 {#11-特点}
- 可以自建的开源项目(GitHub 16.1k star)
- 支持多用户
- 支持导入GA的数据
- 按需扩展统计的功能
- 简单易用
- 尊重隐私
- 没有网站数量限制
- 超过100万用户使用
- 支持Docker部署(简单)
- 支持中文界面
- 有技术支持(需付费)
1.2 评价 {#12-评价}
翻译:"这个工具(Matomo)毫无疑问,是谷歌分析的一个强力竞争者,并对GA高级版构成严重威胁。"
与谷歌分析的部分截图
详细对比,可以看这边:https://matomo.org/matomo-vs-google-analytics-comparison/
- 项目展示 {#2-项目展示}
GitHub原项目地址:https://github.com/matomo-org/matomo
官网地址:https://matomo.org
官方文档地址:https://demo.matomo.cloud/?menu
官方镜像:https://hub.docker.com/_/matomo
2.1 报表面板 {#21-报表面板}
2.2 用户行为 {#22-用户行为}
2.3 趋势分析 {#23-趋势分析}
- 搭建环境 {#3-搭建环境}
- 服务器:~~腾讯香港轻量应用服务器24元/月VPS一台~~ 展示用的服务器是Netcup特价款,本期搭建用的是Vultr的服务器,按小时计费,可随时销毁(最好是选非大陆的服务器)(腾讯轻量购买链接)
- 系统:Debian 10(DD脚本 非必需DD用原来的系统也OK)
- 域名一枚,并做好解析到服务器上(域名购买、域名解析 视频教程)
- 安装好Docker、Docker-compose(相关脚本)
- 【非必需】安装好宝塔面板海外版本aapanel,并安装好Nginx(安装地址)
- 【非必需不过本教程使用 】安装好Nginx Proxy Manager(相关教程)
- 搭建视频 {#4-搭建视频}
YouTube:https://youtu.be/AmHAy_HRNyQ
哔哩哔哩【高清版本可以点击去吐槽到B站观看】:
- 搭建方式 {#5-搭建方式}
服务器初始设置,参考
【Docker系列】不用宝塔面板,小白一样可以玩转VPS服务器!
sudo -i # 切换到root用户
apt update -y # 升级packages
`apt install wget curl sudo vim git # Debian系统比较干净,安装常用的软件
`
创建一下安装的目录:
mkdir -p /root/data/docker_data/matomo
cd /root/data/docker_data/matomo
`nano docker-compose.yml
`
docker-compose.yml
填入以下内容:
version: "3"
services:
db:
image: mariadb
command: --max-allowed-packet=64MB
restart: always
volumes:
- db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=Pas3W0rd
env_file:
- ./db.env
app:
image: matomo
restart: always
volumes:
- ./config:/var/www/html/config
===============================
- ./logs:/var/www/html/logs
===========================
- /root/data/docker_data/matomo/matomo/html:/var/www/html
environment:
- MATOMO_DATABASE_HOST=db
env_file:
- ./db.env
ports:
- 8080:80 # 8080可以更改为别的未使用的端口 lsof -i:8080 可以查看8080端口是否被使用
- 8443:443 # 8443可以更改为别的未使用的端口 这边后续填到NPM的"Custom location"里
`volumes:
db:
matomo:
`
没问题的话,ctrl+x
退出,按y
保存,enter
确认。
然后运行:
nano db.env
输入:
MYSQL_PASSWORD=Pas3W0rd
MYSQL_DATABASE=matomo
MYSQL_USER=matomo
MATOMO_DATABASE_ADAPTER=mysql
MATOMO_DATABASE_TABLES_PREFIX=matomo_
MATOMO_DATABASE_USERNAME=matomo
MATOMO_DATABASE_PASSWORD=Pas3W0rd
MATOMO_DATABASE_DBNAME=matomo
没问题的话,ctrl+x
退出,按y
保存,enter
确认。
然后运行:
docker-compose up -d
访问:http:服务ip:8080
即可。
注意:
1、不知道服务器IP,可以直接在命令行输入:
curl ip.sb
,会显示当前服务器的IP。2、遇到访问不了的情况,请在宝塔面板的防火墙和服务商的后台防火墙里打开对应端口。
- 反向代理 {#6-反向代理}
在添加反向代理之前,确保你已经完成了域名解析,不会的可以看这个:域名一枚,并做好解析到服务器上 (域名购买、域名解析 视频教程)
之后,登陆Nginx Proxy Manager(不会的看这个:安装Nginx Proxy Manager (相关教程))
注意:
Nginx Proxy Manager(以下简称NPM)会用到
80
、443
端口,所以本机不能占用(比如原来就有Nginx)
直接丢几张图:
注意填写对应的域名
和端口
,按文章来的话,应该是8080
Custom location 这边填入域名
、IP地址
、和8443
(就是443那边对应的端口)
然后就可以用域名来安装访问了。
- 使用教程 {#7-使用教程}
- 结尾 {#8-结尾}
祝大家用得开心,有问题可以去GitHub提Issues,也可以在评论区互相交流探讨。
- 参考资料 {#9-参考资料}
GitHub原项目地址:https://github.com/matomo-org/matomo
官网地址:https://matomo.org