f3c281dda4
- package.json: 声明 vue/element-plus/marked/vite 等依赖 - setup.sh/start.sh: 用 npm run build 替代 npx vite build - start.sh: 构建前自动 npm install --include=dev - 重新生成 package-lock.json
50 lines
1.3 KiB
Bash
Executable File
50 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# K8S 智能诊断平台 - 一键启动脚本
|
|
set -e
|
|
cd "$(dirname "$0")"
|
|
|
|
PORT=${PORT:-8900}
|
|
|
|
echo "========================================="
|
|
echo " K8S 智能诊断平台"
|
|
echo " 端口: $PORT"
|
|
echo "========================================="
|
|
|
|
# 检查 kubectl
|
|
KUBECTL=$(which kubectl 2>/dev/null || echo "$HOME/bin/kubectl")
|
|
if [ ! -x "$KUBECTL" ]; then
|
|
echo "⚠️ 未找到 kubectl,请先安装"
|
|
exit 1
|
|
fi
|
|
echo "✅ kubectl: $KUBECTL"
|
|
|
|
# 检查 kubeconfig
|
|
if [ -f "$HOME/.kube/config" ]; then
|
|
echo "✅ kubeconfig: ~/.kube/config"
|
|
else
|
|
echo "⚠️ 未找到 ~/.kube/config,诊断将返回空结果"
|
|
fi
|
|
|
|
# 检查 Python 依赖
|
|
if ! python3 -c "import fastapi, uvicorn" 2>/dev/null; then
|
|
echo "❌ 缺少 Python 依赖,请先运行: ./setup.sh"
|
|
exit 1
|
|
fi
|
|
|
|
# 检查前端构建
|
|
if [ ! -f "frontend/dist/index.html" ]; then
|
|
if command -v npm &>/dev/null; then
|
|
echo "📦 构建前端..."
|
|
cd frontend && npm install --include=dev && npm run build && cd ..
|
|
else
|
|
echo "❌ 前端未构建且 npm 不可用,请先运行: ./setup.sh"
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
echo ""
|
|
echo "🚀 启动服务: http://localhost:$PORT"
|
|
echo ""
|
|
|
|
PORT=$PORT python3 -m uvicorn backend.main:app --host 0.0.0.0 --port "$PORT"
|