Sign inSign up

kejizhihui/openbot-tunnel

By kejizhihui

•Updated about 14 hours ago

Image
0

215

kejizhihui/openbot-tunnel repository overview


⁠OpenBot Tunnel - 一键公网隧道 (Cloudflare Tunnel)

⁠基于:alpine + cloudflared + python3
功能:自动创建 Cloudflare 临时隧道,动态获取最新公网地址,一键重启换域名
配合:OpenBot 主服务(kejizhihui/openbot-bot)使用,提供公网 Web 访问

⁠✨ 核心功能

  • 自动创建 Cloudflare 临时隧道(trycloudflare.com 随机域名)
  • 内置 python 小服务(1314端口)实时盯 cloudflared 日志,自动抓取最新公网地址
  • 一键重启隧道换新域名(/clweb cz),无需重启整个容器
  • 地址服务永远在线,重启隧道不断连
  • Bot 侧 /clweb 命令直接读取最新地址 + 隧道状态
  • 完整暴露 Cloudflare metrics(20241端口)用于监控
  • 配置持久化,数据统一存放 shared/ 目录

⁠🚀 快速启动

⁠Docker Run 启动
docker run -d \
  --name openbot-tunnel \
  --restart unless-stopped \
  -p 1314:1314 \
  -p 20241:20241 \
  -v /your/path/shared:/app/shared \
  kejizhihui/openbot-tunnel:latest
⁠Docker Compose 启动
services:
  cloudflared:
    image: kejizhihui/openbot-tunnel:latest
    container_name: openbot-tunnel
    restart: unless-stopped
    ports:
      - "1314:1314"
      - "20241:20241"
    volumes:
      - ./shared:/app/shared

然后启动:

docker-compose up -d

⁠🔗 接口说明

⁠1314 端口(地址服务,必用)
路径方法说明
/GET返回当前最新公网地址(纯文本)
/restartGET重启 cloudflared 进程,自动生成新域名(容器不断)
⁠20241 端口(Cloudflare metrics,可选)

由 cloudflared 原生提供,返回 Prometheus 格式监控指标:

  • cloudflared_tunnel_ha_connections:活跃连接数
  • cloudflared_tunnel_concurrent_requests_per_tunnel:并发请求数
  • cloudflared_proxy_requests_total:累计请求数

⁠📊 与主服务配合

OpenBot 主容器(kejizhihui/openbot-bot)通过容器名 openbot-tunnel:1314 访问地址服务:

  • /clweb:显示公网地址、隧道状态、并发请求数、累计请求数
  • /clweb cz:自动重启隧道生成新域名,约1分钟生效

⁠🔧 常用操作命令

# 查看最新公网地址
curl [http://127.0.0.1:1314](http://127.0.0.1:1314)
# 手动重启隧道换新域名
curl [http://127.0.0.1:1314/restart](http://127.0.0.1:1314/restart)
# 查看隧道监控指标
curl [http://127.0.0.1:20241/metrics](http://127.0.0.1:20241/metrics)
# 查看实时日志
docker logs -f openbot-tunnel

⁠🚨 常见问题

⁠1. 隧道地址失效(Error 1033)
  • Cloudflare 临时隧道会不定期失效
  • 在 Bot 里发 /clweb cz 即可自动重启换新域名
  • 或手动执行 curl [http://127.0.0.1:1314/restart](http://127.0.0.1:1314/restart),等1分钟拿新地址
⁠2. 1314 打不开
  • 确认容器已启动:docker ps
  • 确认 1314 端口映射正确
  • 确认 shared/ 目录可写(日志文件写入用)
⁠3. 地址一直返回旧链接
  • 重启隧道后 cloudflared 需要约15-20秒打印新域名
  • 轮询等待后会自动更新为最新地址,不会返回旧链接

⁠📁 数据目录

目录说明
shared/tunnel.log(cloudflared日志)、tunnel_python.log(python服务日志),建议与主服务共用同一挂载

Tag summary

Content type

Image

Digest

sha256:b6f073710…

Size

39.7 MB

Last updated

10 days ago

docker pull kejizhihui/openbot-tunnel