fix: Cloudflare Tunnel HTTP/2、监控去重、AutoKuma 健康检查

- cloudflared 改 HTTP/2 协议(QUIC 被干扰导致 1033)
- 监控 URL 改为内网直连(避免 Docker 回路不通)
- AutoKuma 依赖 uptime-kuma 健康检查后再启动
- 删除手动监控,AutoKuma 独管,解决重复问题
This commit is contained in:
2026-05-25 17:16:08 +08:00
parent c824e22b53
commit bba920d758
5 changed files with 18 additions and 15 deletions

View File

@@ -3,7 +3,7 @@ services:
image: cloudflare/cloudflared:latest
container_name: cloudflared
restart: unless-stopped
command: tunnel run
command: tunnel --protocol http2 run
volumes:
- ./config.yml:/etc/cloudflared/config.yml:ro
- ./credentials.json:/etc/cloudflared/credentials.json:ro

View File

@@ -55,7 +55,7 @@ services:
# --- 3. AutoKuma 自动发现设置 ---
# 格式: kuma.<自定义ID>.<监控类型>.<属性>
- "kuma.gitea.http.name=Gitea" # 监控项名称
- "kuma.gitea.http.url=https://gitea.xiteng.site" # 监控的目标 URL
- "kuma.gitea.http.url=http://gitea:3000" # 内网直连
# (可选) 每 60 秒检查一次,重试 3 次
- "kuma.gitea.http.interval=60"
- "kuma.gitea.http.max_retries=3"

View File

@@ -54,7 +54,7 @@ services:
# --- 3. AutoKuma 自动发现设置 ---
# 格式: kuma.<自定义ID>.<监控类型>.<属性>
- "kuma.hedgedoc.http.name=HedgeDoc" # 监控项名称
- "kuma.hedgedoc.http.url=https://notes.xiteng.site" # 监控的目标 URL
- "kuma.hedgedoc.http.url=http://hedgedoc:3000" # 内网直连
# (可选) 每 60 秒检查一次,重试 3 次
- "kuma.hedgedoc.http.interval=60"
- "kuma.hedgedoc.http.max_retries=3"

View File

@@ -32,7 +32,7 @@ services:
# --- 3. AutoKuma 自动发现设置 ---
# 格式: kuma.<自定义ID>.<监控类型>.<属性>
- "kuma.homepage.http.name=HomePage" # 监控项名称
- "kuma.homepage.http.url=https://home.xiteng.site" # 监控的目标 URL
- "kuma.homepage.http.url=http://homepage:3000" # 内网直连
# (可选) 每 60 秒检查一次,重试 3 次
- "kuma.homepage.http.interval=60"
- "kuma.homepage.http.max_retries=3"

View File

@@ -3,28 +3,30 @@ services:
image: louislam/uptime-kuma:2
container_name: uptime-kuma
restart: unless-stopped
healthcheck:
test: ["CMD", "node", "-e", "require('http').get('http://localhost:3001', (r) => {r.resume(); process.exit(0)}).on('error', () => process.exit(1))"]
interval: 10s
timeout: 5s
retries: 3
volumes:
- ./data:/app/data
ports:
- "3001:3001"
labels:
# --- 1. Traefik 路由设置 ---
- "traefik.enable=true"
- "traefik.http.routers.uptime.rule=Host(`uptime.xiteng.site`)"
- "traefik.http.services.uptime.loadbalancer.server.port=3001"
- "traefik.http.routers.uptime.entrypoints=websecure"
# --- HTTP 入口(来自 cloudflared tunnel---
- "traefik.http.routers.uptime-http.rule=Host(`uptime.xiteng.site`)"
- "traefik.http.routers.uptime-http.service=uptime"
- "traefik.http.routers.uptime-http.entrypoints=web"
- "traefik.http.routers.uptime.tls=true"
- "traefik.http.routers.uptime.tls.certresolver=cfresolver"
# --- 2. Homepage 自动发现设置 ---
- "homepage.group=生产力工具" # 分组名称
- "homepage.name=Uptime Kuma" # 显示名称
- "homepage.icon=uptime" # 图标 (支持 si, mdi 等前缀)
- "homepage.href=https://uptime.xiteng.site" # 点击跳转的链接
- "homepage.description=网站监控工具" # 副标题描述
- "homepage.group=生产力工具"
- "homepage.name=Uptime Kuma"
- "homepage.icon=uptime"
- "homepage.href=https://uptime.xiteng.site"
- "homepage.description=网站监控工具"
networks:
- homelab_net
@@ -35,10 +37,11 @@ services:
- /var/run/docker.sock:/var/run/docker.sock:ro
env_file: ../.env
environment:
# 指向你的 Uptime Kuma 内部地址 (如果在同一 bridge 网络下,直接用容器名:端口)
AUTOKUMA__KUMA__URL: http://uptime-kuma:3001
AUTOKUMA__KUMA__URL: http://uptime-kuma:3001
AUTOKUMA__TAG: homelab
depends_on:
- uptime-kuma
uptime-kuma:
condition: service_healthy
networks:
- homelab_net