Centos7 自建Umami-开源免费的网站访问流量统计分析平台

一、安装docker
sh 复制代码
1.安装前提:
yum -y install gcc gcc-c++
yum install -y yum-utils
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 			#国外使用
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo	#国内使用
yum makecache fast

2.安装和启动
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
systemctl start docker
systemctl enable docker
ps -ef|grep docker

3.安装docker-compose
curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose -v
二、安装Umami网站统计工具
sh 复制代码
1、mkdir /data/umami && cd /data/umami

2、vi docker-compose.yml
注意:国内可以将ghcr.io改为docker.umami.dev
---
version: '3'
services:
  umami:
    image: ghcr.io/umami-software/umami:postgresql-latest
    ports:
      - "3000:3000"
    environment:
      DATABASE_URL: postgresql://umami:umami@db:5432/umami
      DATABASE_TYPE: postgresql
      APP_SECRET: replace-me-with-a-random-string
      TRACKER_SCRIPT_NAME: random-string.js
    depends_on:
      - db
    restart: always
  db:
    image: postgres:15-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:/data/postgresql/data
    restart: always
volumes:
  umami-db-data:

3、启用 Docker 容器:
docker compose up -d

此时,打开 http://server_ip:3000即可登录 Umami 开始使用了。
默认账号:admin
默认密码:umami
三、配置nginx反向代理
复制代码
server {
    listen 80;
    server_name tongji.xxxx.com;
    access_log  /data/log/nginx/access_tongji.log;

    location /  {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header REMOTE-HOST $remote_addr;
        add_header X-Cache $upstream_cache_status;
        # 缓存
        add_header Cache-Control no-cache;
        expires 12h;
    }

}
	#限制后台登录设置
        location /login {
        allow 127.0.0.1;
        allow 本地公网ip;
        #add dynamic
        deny all;
	proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header REMOTE-HOST $remote_addr;
        add_header X-Cache $upstream_cache_status;
        # 缓存
        add_header Cache-Control no-cache;
        expires 12h;
    }

然后reload nginx,可以加cdn
不要缓存 .jpg;.png;.js;.css,尤其不要缓存js。
相关推荐
博士僧小星13 小时前
环境配置|GPUStack——为大模型而生的开源GPU集群管理器
开源·大模型·gpu·gpustack
thubier(段新建)1 天前
2025重新出发!中小物流仓配一体化平台的技术选型&建设手记
开源·城市配送
IT 小阿姨(数据库)1 天前
PostgreSQL 之上的开源时序数据库 TimescaleDB 详解
运维·数据库·sql·postgresql·开源·centos·时序数据库
weixin_377634841 天前
【开源简历解析】SmartResume 0.6B模型实现96%准确率
开源·简历解析
商汤万象开发者1 天前
LazyLLM教程 | 第13讲:RAG+多模态:图片、表格通吃的问答系统
人工智能·科技·算法·开源·多模态
Coovally AI模型快速验证1 天前
视觉语言模型(VLM)深度解析:如何用它来处理文档
人工智能·yolo·目标跟踪·语言模型·自然语言处理·开源
小马爱打代码1 天前
实战:分布式开源监控Zabbix
分布式·开源·zabbix
weixin_511222801 天前
ymi 和 WowPacketParser 使用教程
开源
SCYYD12 天前
抽屉式开关柜技术强企业
开源
隐语SecretFlow2 天前
新晋社区之星何晨阳:从使用者到贡献者,我是如何理解并反哺开源?
程序人生·开源·开源软件