生产版 Tunnel 状态报告和修复指南
日期: 2026-02-08
状态: ⚠️ 需要修复
问题诊断结果
✅ 已确认正常的部分
Tunnel 连接状态
- 容器:
mbe-cloudflared✅ 运行中 - Tunnel ID:
456cc7cd-718a-46f8-acd5-82dd7cd674c4(生产版mbe-prod)✅ - Token:生产版 Token 已正确配置 ✅
- 连接状态:✅
Registered tunnel connection
- 容器:
基础设施
- 生产版数据库 (
mbe-postgres) ✅ 运行中 - 生产版 Redis (
mbe-redis) ✅ 运行中 - Docker 网络 (
mbe-monorepo_default) ✅ 已创建
- 生产版数据库 (
❌ 需要修复的问题
Cloudflare Dashboard 配置错误(主要问题)
- 当前配置:Tunnel 路由指向开发版服务
dev-app.hi-maker.com → mbe-pwa-dev:80 admin.hi-maker.com → mbe-admin-ui-dev:3000 aigc-dev.hi-maker.com → mbe-aigc-committee-dev:3002 mbe-dev.hi-maker.com → mbe-api:8000 - 应该配置为:生产版路由
mbe.hi-maker.com → mbe-api:8000
- 当前配置:Tunnel 路由指向开发版服务
生产版 API 服务问题
- 容器:
mbe-api❌ 启动失败 - 错误:权限问题 (
Permission denied: /root/.local/bin/uvicorn) - 状态:
Restarting (2)
- 容器:
修复步骤
🔴 紧急修复:更新 Cloudflare Dashboard 配置
这是最关键的一步,必须在 Cloudflare Dashboard 中手动完成。
访问 Cloudflare Dashboard
URL: https://one.dash.cloudflare.com/ 路径: Networks > Tunnels > mbe-prod > Configure删除所有开发版路由
- 删除:
dev-app.hi-maker.com - 删除:
admin.hi-maker.com(如果指向开发版) - 删除:
aigc-dev.hi-maker.com - 删除:
mbe-dev.hi-maker.com
- 删除:
添加生产版路由
- Subdomain:
mbe - Domain:
hi-maker.com - Service Type:
HTTP - URL:
http://mbe-api:8000 - 说明: 使用 Docker 容器名
mbe-api,不是 IP 地址
- Subdomain:
保存配置
- 点击 Save
- 等待 10-30 秒让配置同步
验证配置更新
# 重启 Tunnel 容器 docker restart mbe-cloudflared # 等待几秒后检查日志 Start-Sleep -Seconds 10 docker logs mbe-cloudflared --tail 50 | Select-String "Updated to new configuration"预期输出:
INF Updated to new configuration config="{\"ingress\":[{\"hostname\":\"mbe.hi-maker.com\",\"originRequest\":{},\"service\":\"http://mbe-api:8000\"},{\"service\":\"http_status:404\"}],\"warp-routing\":{\"enabled\":false}}"
🟡 次要修复:修复生产版 API 服务
生产版 API 服务存在权限问题,需要修复 Dockerfile 或重新构建镜像。
临时解决方案(如果只需要 Tunnel 连接):
- Tunnel 配置更新后,即使
mbe-api服务未运行,Tunnel 也会显示为 HEALTHY - 但访问
https://mbe.hi-maker.com会返回 502 Bad Gateway
完整解决方案:
- 检查 Dockerfile 中的权限设置
- 重新构建生产版镜像
- 启动服务
# 检查 Dockerfile
cat d:\Mises\mbe-monorepo\docker\Dockerfile.api
# 重新构建镜像(修复权限问题后)
cd d:\Mises\mbe-monorepo
docker compose -f docker-compose.yml build mbe-api
# 启动服务
docker compose -f docker-compose.yml up -d mbe-api
验证清单
完成修复后,请验证以下项目:
- Cloudflare Dashboard 中
mbe-prodTunnel 状态为 HEALTHY - Tunnel 日志显示配置包含
mbe.hi-maker.com→http://mbe-api:8000 - 生产版服务
mbe-api正在运行(如果已修复权限问题) - 可以访问
https://mbe.hi-maker.com/api/health(如果服务运行正常)
当前状态总结
| 组件 | 状态 | 说明 |
|---|---|---|
| Tunnel 连接 | ✅ 正常 | 已连接到生产版 Tunnel |
| Tunnel Token | ✅ 正确 | 使用生产版 Token |
| Cloudflare 配置 | ❌ 错误 | 路由指向开发版服务 |
| 生产版 API | ❌ 失败 | 权限问题导致启动失败 |
| 数据库/Redis | ✅ 正常 | 基础设施运行正常 |
下一步行动
- 立即执行:在 Cloudflare Dashboard 中更新 Tunnel 配置
- 随后修复:解决生产版 API 服务的权限问题
- 验证:测试生产版域名访问