共计 2508 个字符,预计需要花费 7 分钟才能阅读完成。
1、拉取 Docker umami 镜像
docker pull docker.umami.is/umami-software/umami:postgresql-latest
2、创建唯一 HASH
openssl rand -hex 32
2.1、创建 docker-compose.yml
nano docker-compose.yml
services:
umami:
image: ghcr.io/umami-software/umami:postgresql-latest
ports:
- "3000:3000"
environment:
DATABASE_URL: postgresql://ianext:www.ianext.com@postgres:5432/ianext
HASH_SALT: www.ianext.com #创建唯一 HASH
depends_on:
postgres:
condition: service_healthy
networks:
- umami-network
restart: always
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
interval: 10s
timeout: 5s
retries: 10
start_period: 30s
postgres:
image: postgres:14-alpine
volumes:
- postgres-data:/var/lib/postgresql/data
environment:
POSTGRES_DB: ianext #数据库名字
POSTGRES_USER: ianext #数据库用户名
POSTGRES_PASSWORD: www.ianext.com #数据库密码
networks:
- umami-network
healthcheck:
test: ["CMD-SHELL", "pg_isready -U umami -d umami"]
interval: 5s
timeout: 5s
retries: 5
restart: always
networks:
umami-network:
volumes:
postgres-data:
3、通过 docker-compose.yml 部署文件 安装 Docker umami 镜像
docker compose up -d
配置 nginx 站点访问 或 直接通过端口 3000 访问
可以自行考虑配置 nginx 内容(复制以下内容即可)# HTTP 自动跳转 HTTPS
server {
listen 80;
server_name u.ianext.com;
return 301 https://$host$request_uri;
}
# HTTPS 主服务 - 反向代理到 umami
server {
listen 443 ssl;
http2 on;
server_name u.ianext.com; # 仅保留一个域名定义
ssl_certificate /root/.acme.sh/you.domain.com_ecc/fullchain.cer;
ssl_certificate_key /root/.acme.sh/you.domain.com_ecc/ianext.com.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers "TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:!MD5";
ssl_prefer_server_ciphers on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_dhparam /usr/local/nginx/conf/ssl/dhparam.pem;
# 反向代理核心配置
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_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400;
}
# 安全规则
location ~ /\.(env|git) {deny all;}
location ~ /.well-known {allow all;}
access_log /home/wwwlogs/u.ianext.com.log;
}
3、最后
3.1、重启 nginx 或者 lnmp
3.2、防火墙开启 3000 端口
3.3、网页添加代码
3.3.1、默认账号与密码登录 umami.ianext.com
3.3.2、添加网站信息 www.ianext.com
3.3.3、点击 编辑
3.3.4、点击 跟踪代码
3.3.5、将以下代码复制到你的网站内容中,比如 wordpress 可以选择 Insert Headers and Footers 插件
3.3.5.1、可以在 nginx 网站配置文件添加其代码
3.3.6 如果不懂,可以考虑 AI 咨询 或 官方网站 umami
记得修改 umami 默认登陆的端口或者是管理员密码
正文完