From f32b7bee6a44915b5260f66de6f3dde3009056a5 Mon Sep 17 00:00:00 2001 From: yoyo Date: Fri, 21 Nov 2025 18:16:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=81=A5=E5=BA=B7=E7=9B=91=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- install.sh | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/install.sh b/install.sh index b2cb987..bd4553f 100755 --- a/install.sh +++ b/install.sh @@ -361,12 +361,28 @@ verify_installation() { fi fi - # 健康检查 - sleep 2 - if curl -sf http://localhost:2200/api/health > /dev/null; then - echo -e "${GREEN}✓ 健康检查通过${NC}" - else - echo -e "${YELLOW}⚠ 健康检查未通过,请稍后重试${NC}" + # 健康检查(重试多次,给服务启动时间) + echo -e "${BLUE}等待服务启动并检查健康状态...${NC}" + HEALTH_CHECK_PASSED=false + for i in {1..10}; do + sleep 2 + if curl -sf http://localhost:2200/api/health > /dev/null 2>&1; then + HEALTH_RESPONSE=$(curl -s http://localhost:2200/api/health 2>/dev/null || echo "") + if echo "$HEALTH_RESPONSE" | grep -q '"status":"ok"'; then + HEALTH_CHECK_PASSED=true + echo -e "${GREEN}✓ 健康检查通过${NC}" + break + fi + fi + if [ $i -lt 10 ]; then + echo -e "${BLUE}等待服务启动... ($i/10)${NC}" + fi + done + + if [ "$HEALTH_CHECK_PASSED" = false ]; then + echo -e "${YELLOW}⚠ 健康检查未通过${NC}" + echo -e "${YELLOW}请检查服务日志: sudo journalctl -u ${SERVICE_NAME} -n 50${NC}" + echo -e "${YELLOW}或手动测试: curl http://localhost:2200/api/health${NC}" fi }