#!/bin/bash # K8S 智能诊断平台 - 环境安装脚本 set -e 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 ..." curl -fsSL https://deb.nodesource.com/setup_20.x | bash - apt-get install -y nodejs fi echo " ✅ Node.js $(node -v), npm $(npm -v)" echo "" # 2. 安装前端依赖 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 "[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 "" # 4. 构建前端 echo "[4/5] 构建前端 (vite build) ..." cd frontend && npm run build && cd .. echo " ✅ 前端构建完成 → frontend/dist/" echo "" # 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_API_BASE 和 AI_API_KEY)" else echo " ✅ .env 已存在,跳过" fi echo "" echo "=========================================" echo " ✅ 安装完成!" echo " 启动服务: ./start.sh" echo " 访问地址: http://localhost:8900" echo "========================================="