Files
douyin/backend/baota_init.sh
T
2026-07-17 09:24:47 +08:00

53 lines
1.7 KiB
Bash

#!/usr/bin/env bash
# 宝塔 Python 项目 - 项目初始化命令
# 在面板填写: /www/wwwroot/douyin/backend/baota_init.sh
# 执行时机: 宝塔创建虚拟环境并 pip install requirements.txt 之后
set -euo pipefail
BACKEND="$(cd "$(dirname "$0")" && pwd)"
ROOT="$(cd "$BACKEND/.." && pwd)"
# shellcheck source=lib/resolve_python.sh
source "$BACKEND/lib/resolve_python.sh"
PY="$(resolve_python "$BACKEND" "$ROOT")"
ensure_uvicorn "$PY" "$BACKEND"
echo "========================================"
echo " 抖音客服 - 宝塔项目初始化"
echo " Python: $("$PY" -V 2>&1) @ $PY"
echo "========================================"
# 校验 Python
"$PY" -c "import ssl; print('[OK] OpenSSL:', ssl.OPENSSL_VERSION)"
echo "[1/4] Playwright Chromium..."
KEFU_PYTHON="$PY" bash "$BACKEND/baota_playwright.sh"
echo "[2/4] IM 签名 Node 依赖..."
if command -v npm &>/dev/null; then
cd "$BACKEND/rpa_engine/douyin_im/static"
npm install --no-fund --no-audit
else
echo "[警告] 未找到 npm,请宝塔安装 Node 18+ 后重新运行本脚本"
fi
echo "[3/4] 前端依赖与构建..."
if command -v npm &>/dev/null && [ -f "$ROOT/frontend/package.json" ]; then
cd "$ROOT/frontend"
npm install --no-fund --no-audit
npm run build
else
echo "[警告] 跳过前端构建"
fi
echo "[4/4] 校验..."
cd "$BACKEND"
"$PY" -c "import fastapi, uvicorn, playwright; print(' 核心包 OK')"
[ -f "$ROOT/frontend/dist/index.html" ] && echo " 前端静态 OK" || echo "[警告] 未找到 frontend/dist"
echo
echo "========================================"
echo " 宝塔初始化完成"
echo " 启动命令请用: bash $BACKEND/baota_start.sh"
echo "========================================"