docker应用:网站统计工具Umami
搭建一个网站之后,适当对网站进行统计是十分必要的。网站安装网站统计工具 Umami 是一个谷歌分析的一个简单、快速、注重隐私的替代品。作为一个开源的站点访问量监看程序,支持docker部署到自己的服务器上。相比百度等收费的网站信息统计分析,这种方式对于个人用户更高效便利。参考同期 - docker应用:搭建反代神器Nginx Proxy Manager。给被统计的网站设置反向代理,打开网站。
文章共1,781字 · 阅读需要大约6分钟
一键AI生成摘要,助你高效阅读
问答
·
简介:搭建一个网站之后,适当对网站进行统计是十分必要的。网站安装网站统计工具 Umami 是一个谷歌分析的一个简单、快速、注重隐私的替代品。作为一个开源的站点访问量监看程序,支持docker部署到自己的服务器上。相比百度等收费的网站信息统计分析,这种方式对于个人用户更高效便利。
历史攻略:
项目资料:
官方网站:https://umami.is/
官方文档:https://umami.is/docs/
开源地址:https://github.com/umami-software/umami
编辑:docker-compose.yaml 注意端口号。如果被占用则更换。
version: '3'
services:
umami:
image: ghcr.io/umami-software/umami:postgresql-latest
ports:
- "3002: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:
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
volumes:
umami-db-data:
安装:
git clone https://github.com/umami-software/umami.git
cd umami
docker pull docker.umami.dev/umami-software/umami:postgresql-latest
docker-compose up -d
安装结果:
(base) [root@VM-0-2-centos umami]# docker-compose up -d
Creating umami_db_1 ... done
Creating umami_umami_1 ... done
(base) [root@VM-0-2-centos umami]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
370076b3b7a4 ghcr.io/umami-software/umami:postgresql-latest "docker-entrypoint.s…" About a minute ago Up About a minute 0.0.0.0:3002->3000/tcp, :::3002->3000/tcp
前置准备:(搭建网站 + 申请域名+反向代理)
搭建的项目目录结构:
# /path/to/SanicDocker
SanicDocker
├── requirements.txt
├── Dockerfile
└── server.py
案例源码:server.py
# -*- coding: utf-8 -*-
# time: 2023/3/10 0:22
# file: main.py
# 公众号: 玩转测试开发
from sanic import Sanic
from sanic.response import json, html
app = Sanic(__name__)
@app.get("/")
async def hello(request):
title = "我的首页"
message = f"""
<!DOCTYPE html>
<html lang="en">
<head>
<script async defer data-website-id="323452ebe2-e32e-4222-9733-1a293331349" src="http://111.112.113.114:3002/umami.js"></script>
<meta charset="UTF-8">
<title>我的主页</title>
</head>
<body>
<h2>{title}</h2>
</body>
</html>
"""
return html(message)
if __name__ == '__main__':
app.run(host="0.0.0.0", port=8006)
requirements.txt
sanic==21.6.0
Dockerfile
FROM sanicframework/sanic:3.8-latest
WORKDIR /sanic
COPY . .
RUN pip install -r requirements.txt
EXPOSE 8006
CMD ["python", "server.py"]
构建镜像:
docker build -t my-sanic .
启动容器:
docker run --name test-sanic -p 8006:8006 -d my-sanic
配置反向代理:
参考同期 - docker应用:搭建反代神器Nginx Proxy Manager
给被统计的网站设置反向代理,打开网站。
访问管理后台:http://{ip}:3002/
默认账号:admin 默认密码:umami
设置语言为:简体中文
点击Settings->Add website,添加网站
复制Tracking Code,在网站代码中添加。
有访客之后就可以看到统计
设置简体中文:
添加网站:被统计的网站必须为域名的形式。
把以下代码放到你的网站的 部分来收集被统计网站数据:
<script async defer data-website-id="234234-e32e-23423-97c7-1a29f8bd5449" src="http://111.112.113.114:3002/umami.js"></script>
最终效果:
更多推荐
已为社区贡献6条内容
所有评论(0)