feat: 诊断过程实时进度展示 (SSE流式推送)
- 新增 GET /api/diagnose/stream SSE接口, 每完成一项检查实时推送 - 前端: 诊断中显示步骤进度条+每项检查状态(运行中/完成/问题数) - 解决诊断过程'卡着'无反馈的体验问题 - 保留 POST /api/diagnose 兼容旧接口
This commit is contained in:
@@ -6,52 +6,72 @@ cd "$(dirname "$0")"
|
||||
echo "========================================="
|
||||
echo " K8S 智能诊断平台 - 环境安装"
|
||||
echo "========================================="
|
||||
echo ""
|
||||
|
||||
# 1. 检查 Node.js
|
||||
echo "[1/5] 检查 Node.js ..."
|
||||
if ! command -v node &>/dev/null; then
|
||||
echo "📦 安装 Node.js 20.x ..."
|
||||
echo " → 未找到 Node.js,正在安装 20.x ..."
|
||||
curl -fsSL https://deb.nodesource.com/setup_20.x | bash -
|
||||
apt-get install -y nodejs
|
||||
fi
|
||||
echo "✅ Node.js: $(node -v)"
|
||||
echo "✅ npm: $(npm -v)"
|
||||
echo " ✅ Node.js $(node -v), npm $(npm -v)"
|
||||
echo ""
|
||||
|
||||
# 2. 安装前端依赖
|
||||
echo "📦 安装前端依赖..."
|
||||
echo "[2/5] 安装前端依赖 (npm install) ..."
|
||||
echo " → 如果速度慢,可 Ctrl+C 后手动执行:"
|
||||
echo " cd frontend && npm install --include=dev --registry=https://registry.npmmirror.com"
|
||||
echo ""
|
||||
cd frontend
|
||||
npm install --include=dev
|
||||
cd ..
|
||||
echo " ✅ 前端依赖安装完成"
|
||||
echo ""
|
||||
|
||||
# 3. 安装 Python 依赖
|
||||
echo "📦 安装 Python 依赖..."
|
||||
echo "[3/5] 安装 Python 依赖 (pip3 install) ..."
|
||||
if command -v pip3 &>/dev/null; then
|
||||
pip3 install fastapi uvicorn kubernetes httpx python-dotenv
|
||||
elif command -v pip &>/dev/null; then
|
||||
pip install fastapi uvicorn kubernetes httpx python-dotenv
|
||||
else
|
||||
echo " → pip 未找到,正在安装 python3-pip ..."
|
||||
apt-get install -y python3-pip
|
||||
pip3 install fastapi uvicorn kubernetes httpx python-dotenv
|
||||
fi
|
||||
echo "✅ Python 依赖安装完成"
|
||||
echo " ✅ Python 依赖安装完成"
|
||||
echo ""
|
||||
|
||||
# 4. 构建前端
|
||||
echo "📦 构建前端..."
|
||||
echo "[4/5] 构建前端 (vite build) ..."
|
||||
cd frontend && npm run build && cd ..
|
||||
echo "✅ 前端构建完成"
|
||||
echo " ✅ 前端构建完成 → frontend/dist/"
|
||||
echo ""
|
||||
|
||||
# 5. 创建 .env (如果不存在)
|
||||
# 5. 创建 .env
|
||||
echo "[5/5] 检查配置文件 ..."
|
||||
if [ ! -f .env ]; then
|
||||
cat > .env << 'EOF'
|
||||
# AI 分析接口 (OpenAI 兼容格式)
|
||||
AI_API_BASE=http://localhost:8648/v1
|
||||
AI_API_KEY=hermes
|
||||
AI_MODEL=qwen3.8-max-preview
|
||||
|
||||
# 服务端口
|
||||
PORT=8900
|
||||
|
||||
# Kubeconfig 路径 (留空使用默认 ~/.kube/config)
|
||||
KUBECONFIG_PATH=
|
||||
EOF
|
||||
echo "✅ 已创建 .env 配置文件 (请按需修改 AI 接口配置)"
|
||||
echo " ✅ 已创建 .env (请按需修改 AI_API_BASE 和 AI_API_KEY)"
|
||||
else
|
||||
echo " ✅ .env 已存在,跳过"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "========================================="
|
||||
echo " 安装完成!运行 ./start.sh 启动服务"
|
||||
echo " ✅ 安装完成!"
|
||||
echo " 启动服务: ./start.sh"
|
||||
echo " 访问地址: http://localhost:8900"
|
||||
echo "========================================="
|
||||
|
||||
Reference in New Issue
Block a user