由于百度统计使用 unload 导致浏览器错误和性能问题,加之广告拦截普遍屏蔽其代码,数据采集变得不可靠。为了提升数据准确性并保护访客隐私,我们决定转向自行部署 Umami。
在部署过程中,特别是在国内环境下通过 Docker 拉取镜像时,尝试了多种加速方案仍不奏效,最终发现现有教程推荐的镜像地址并非 Docker Hub 的标准地址。基于这些经验,我整理了一份优化后的 docker-compose.yml 配置建议,为遇到类似问题的朋友提供更稳定的部署路径。
宝塔面板篇
在需要放入umami信息的文件夹建立docker-compose.yaml文件,填写下面的内容:
version: '3'
services:
umami:
container_name: umami
image: umamisoftware/umami:postgresql-latest
ports:
- "3000:3000"
environment:
DATABASE_URL: postgresql://umami:umami@db:5432/umami
DATABASE_TYPE: postgresql
HASH_SALT: replace-me-with-a-random-string
depends_on:
- db
restart: always
db:
container_name: umami-db
image: postgres:12-alpine
environment:
POSTGRES_DB: umami
POSTGRES_USER: umami
POSTGRES_PASSWORD: umami
volumes:
- ./sql/schema.postgresql.sql:/docker-entrypoint-initdb.d/schema.postgresql.sql:ro
- ./umami-db-data:/var/lib/postgresql/data
restart: always
注意,umami的ports中,3000:3000可以将前面的3000更换成其他闲置端口。
然后通过ssh访问服务器后,cd进这个文件夹,然后执行 docker-compose up -d 即可配置完成。
添加反向代理


目标url填写:http://127.0.0.1:你的端口号,如果使用的是本文的docker compose文件没有改端口号的话,应该填写:http://127.0.0.1:3000
设置信息
进入之后umami默认的用户名为admin,默认密码为umami。进入之后我们先改一下语言。

添加网站
进入设置->点击添加你需要统计的网站网站

设置一个名字和添加地址,地址可选https头
在您的网站中插入您的代码
我们将统计代码插入到head中比较好。 点击网站的“编辑”

选择“跟踪代码”我们就可以看到html代码了。插入到全局或者你想要的页面即可。

如果您的网站后台(博客主题模板)支持全局或者自定义插入,建议使用网站自带的。
1Panel面板篇
进入到您1panel管理面板后台,依次点击,应用商店,右上角搜索,umami,点击安装,设置好你需要的端口和是否开启外网访问。


配置域名和反向代理
如果你需要配置域名访问,和反向代理就需要在右边设置栏目,网站,创建,选择反向代理,填写你需要的域名,下面的代理地址一般填写127.0.0.1:3000(你修改的端口号),点击确认

最后(可以选择开启https,ssl证书)用创建的网站访问,就可以了,上面宝塔的后续步骤即可。
由于百度统计使用 unload 导致浏览器错误和性能问题,加之广告拦截普遍屏蔽其代码,数据采集变得不可靠。为了提升数据准确性并保护访客隐私,我们决定转向自行部署 Umami。
在部署过程中,特别是在国内环境下通过 Docker 拉取镜像时,尝试了多种加速方案仍不奏效,最终发现现有教程推荐的镜像地址并非 Docker Hub 的标准地址。基于这些经验,我整理了一份优化后的 docker-compose.yml 配置建议,为遇到类似问题的朋友提供更稳定的部署路径。
宝塔面板篇
在需要放入umami信息的文件夹建立docker-compose.yaml文件,填写下面的内容:
version: '3'
services:
umami:
container_name: umami
image: umamisoftware/umami:postgresql-latest
ports:
- "3000:3000"
environment:
DATABASE_URL: postgresql://umami:umami@db:5432/umami
DATABASE_TYPE: postgresql
HASH_SALT: replace-me-with-a-random-string
depends_on:
- db
restart: always
db:
container_name: umami-db
image: postgres:12-alpine
environment:
POSTGRES_DB: umami
POSTGRES_USER: umami
POSTGRES_PASSWORD: umami
volumes:
- ./sql/schema.postgresql.sql:/docker-entrypoint-initdb.d/schema.postgresql.sql:ro
- ./umami-db-data:/var/lib/postgresql/data
restart: always
注意,umami的ports中,3000:3000可以将前面的3000更换成其他闲置端口。
然后通过ssh访问服务器后,cd进这个文件夹,然后执行 docker-compose up -d 即可配置完成。
添加反向代理


目标url填写:http://127.0.0.1:你的端口号,如果使用的是本文的docker compose文件没有改端口号的话,应该填写:http://127.0.0.1:3000
设置信息
进入之后umami默认的用户名为admin,默认密码为umami。进入之后我们先改一下语言。

添加网站
进入设置->点击添加你需要统计的网站网站

设置一个名字和添加地址,地址可选https头
在您的网站中插入您的代码
我们将统计代码插入到head中比较好。 点击网站的“编辑”

选择“跟踪代码”我们就可以看到html代码了。插入到全局或者你想要的页面即可。

如果您的网站后台(博客主题模板)支持全局或者自定义插入,建议使用网站自带的。
1Panel面板篇
进入到您1panel管理面板后台,依次点击,应用商店,右上角搜索,umami,点击安装,设置好你需要的端口和是否开启外网访问。


配置域名和反向代理
如果你需要配置域名访问,和反向代理就需要在右边设置栏目,网站,创建,选择反向代理,填写你需要的域名,下面的代理地址一般填写127.0.0.1:3000(你修改的端口号),点击确认

最后(可以选择开启https,ssl证书)用创建的网站访问,就可以了,上面宝塔的后续步骤即可。
教程来源 https://blog.zhheo.com/p/61e9.html
https://www.naigou.cn/714.html