docker 搭建 Plausible 流量统计集成谷歌搜索控制台
介绍
Plausible Analytics 是一个简单、开源、轻量级(< 1 KB)且注重隐私的 Google Analytics 替代品。Plausible 被超过10,000个付费订阅用户信任,用于提供他们网站和业务洞察力。我们完全独立、自筹资金并自给自足。
来自官方Docs
特点
- 支持docker一键部署,轻量级Docker镜像(使用Alpine Linux)
- 支持谷歌API,链接谷歌分析、谷歌关键词工具
- 支持自定义事件
安装 Docker 与 Nginx Proxy Manager
可以直接参考这篇内容:
docker-compose 搭建 nginx proxy manager | 赛博空间 (macin.top)
安装教程
创建安装目录
1 | #管理员权限 |
英文输入法下,按 i
进入编辑
1 | version: "3.3" |
修改好之后,注意切换成英文输入法,然后按一下 esc
,然后 :wq
保存退出
生成一串随机字符,写到下面的 SECRET_KEY_BASE
里
1 | #生成随机秘钥 |
打开环境配置文件:
vim plausible-conf.env
1 | BASE_URL=访问plausible的域名,例如:https://fenxi.xxx.com |
修改好之后,注意切换成英文输入法,然后按一下 esc
,然后 :wq
保存退出。
更多参数配置,请看文档:https://plausible.io/docs/self-hosting-configuration
查看端口是否被占用
1 | lsof -i:8000 #查看 8000 端口是否被占用,如果被占用,重新自定义一个端口 |
如果啥也没出现,表示端口未被占用,我们可以继续下面的操作了
如果出现:
1 | -bash: lsof: command not found |
运行:
1 | apt install lsof #安装 lsof |
被占用就修改一下端口,比如改成 8081
,注意 docker 命令行里和防火墙端口放行都要改
输入 http://ip:8000
访问
添加发信邮箱【可选】
使用外部 SMTP 发信邮箱,编辑 Plausible 环境变量文件
1 | vim plausible-conf.env |
添加下面内容
1 | MAILER_EMAIL=plausible@your.domain # 发信邮箱 |
重启容器
1 | docker compose down && docker compose up -d |
没问题的话可以去 Plausible 后台开启每周/每月/异常流量邮件报告,当然这个邮箱也可以在你忘记密码的时候用来重置密码
重写路径【建议】
Plausible 是一个极其尊重隐私的网站统计服务,它:
- 与广告技术和监视资本主义无关
- 不收集任何个人数据,所有统计数据仅为汇总数据
- 没有跨站点或跨设备跟踪
- 您 100% 拥有您的网站数据,不会将其发送、共享或出售给任何第三方
- 完全开源的网络分析软件,可以自行托管
即使如此,它 仍然 被一些广告过滤器规则所屏蔽,作为网站管理员,我们可以使用反向代理脚本和 API 路由来减少被广告过滤器误杀的风险,按照官网文档,至少可以使用的是:
我的服务依赖 Cloudflare,但 Cloudflare Workers 每日请求数有限制,因此在本文中,我会使用 Cloudflare 转换规则 下面的 重写 URL 规则 来完成这个过程,它实施起来非常容易。
在 Plausible 控制台获取到站点统计的脚本示例如下
1 | <script defer |
其中:
- plausible.your.domain 是您部署 Plausible 的域名
- blog.your.domain 是您安装 Plausible 统计脚本的域名
创建重写 URL 规则
规则名称随便填,传入请求匹配自定义筛选表达式
同理,再添加一条规则,重写 API 路由
接下来,修改安装到被统计站点的脚本如下:
1 | <script defer |
如果您的站点使用 Plausible 的其他 统计脚本拓展 也按照上面修改就可以。
统计关键词【可选】
Plausible 支持集成 Google Search Console,可以获得通过搜索引擎得到的关键词统计,详细配置流程可参阅 Plausible 文档,步骤如下:
- 在 Google Cloud Console 创建一个新项目
- 配置 OAuth 同意屏幕
- 创建一个 OAuth 客户端,获取 Client ID 和 CLIENT SECRET
已获授权的 JavaScript 来源,填被查询网站的网址,例:https://macin.top
已获授权的重定向 URI,填plausible网址/auth/google/callback,例:https://stats.macin.ac.cn/auth/google/callback
将 Client ID 和 Client Secret 添加到 Plausible 环境变量文件里
1 | GOOGLE_CLIENT_ID=xxxx |
重启容器
1 | docker compose down && docker compose up -d |
之后在 Plausible 配置下 Google 集成即可
城市精细度【可选】
Plausible 的 v1.5.1 版本新增一条可选配置项,完成这步可获得精细度达到省(州)到具体城市的统计效果,但会额外消耗 1GB 左右的 RAM,请酌情选择。
在前面部署好 Plausible 服务后,进入 geoip 文件夹,下载所需数据库
1 | cd geoip |
回到 Plausible 根目录
1 | cd .. |
编辑 docker-compose.yml 文件
1 | vim docker-compose.yml |
重新创建容器即可
1 | docker compose down && docker compose up -d |
参考信息
Getting started | Plausible docs
- 尽量使用 Gmail、Outlook 等邮箱
- 非必需,您也可以使用其他方式部署 SSL 证书