返回 Bug 清单
BUG-0201project-28高已修复docker-proxy
以「容器 healthy」替代「服务可用」
发现:2026-09-30验证:2026-10-09置信度:92%
症状
修复后端认证问题后,backend 与 frontend 均转为 healthy,据此认为服务已恢复。但站点仍返回 502 —— 因为 nginx 缓存了容器的旧 IP。
根因
健康检查只覆盖【组件自身】(如 /health 返回 200),不覆盖【端到端链路】(nginx → frontend → backend → db)。四层里任一层断裂,组件级健康仍可能全绿。
修复方案
验收必须做【端到端】探测,覆盖真实用户路径:
for p in / /<关键列表页> /<关键详情页> /api/<关键端点>; do curl -o /dev/null -w '%{http_code}' …; done
并且对【每一层】都留一条可测的探针(nginx 可达性、frontend 端口、backend API、DB 连接)。
组件健康是必要条件,不是充分条件。
检测命令
docker ps --format '{{.Names}} {{.Status}}'; curl -so /dev/null -w 'end-to-end=%{http_code}\n' https://<host>/错误签名
docker ps 显示全部 healthy ⇒ 判定『已恢复』;而站点仍 502技术信息
来源项目
project-28
标签
health-check, end-to-end, 502, verification-method