| #!/bin/bash |
|
|
| |
|
|
| |
| export PORT=${PORT:-7860} |
| export HF_SPACE=1 |
|
|
| echo "==========================================" |
| echo "WebAI2API - Hugging Face Space 启动脚本" |
| echo "==========================================" |
| echo "端口: $PORT" |
| echo "工作目录: $(pwd)" |
| echo "==========================================" |
|
|
| |
| mkdir -p data |
|
|
| |
| if [ -f "config.hf.yaml" ]; then |
| echo "使用 Hugging Face 配置文件" |
| cp config.hf.yaml data/config.yaml |
| sed -i "s/port: 7860/port: $PORT/g" data/config.yaml |
| elif [ -f "data/config.yaml" ]; then |
| echo "使用现有配置文件" |
| sed -i "s/port: 3000/port: $PORT/g" data/config.yaml |
| else |
| echo "从示例配置文件创建" |
| cp config.example.yaml data/config.yaml |
| sed -i "s/port: 3000/port: $PORT/g" data/config.yaml |
| fi |
|
|
| |
| echo "" |
| echo "配置文件预览:" |
| echo "----------------------------------------" |
| grep -E "^(port|headless|fission|queueBuffer|imageLimit):" data/config.yaml |
| echo "----------------------------------------" |
| echo "" |
|
|
| |
| if [ -n "$WEBDAV_URL" ] && [ -n "$WEBDAV_USER" ] && [ -n "$WEBDAV_PASS" ]; then |
| echo "==========================================" |
| echo "📦 使用 WebDAV 自动恢复浏览器数据..." |
| echo "==========================================" |
| |
| if [ -d "data/camoufoxUserData" ]; then |
| echo "⚠️ 本地已有数据,跳过恢复" |
| echo "如需强制恢复,请先运行:npm run clear-data" |
| else |
| echo "正在从 WebDAV 恢复数据..." |
| if npm run restore-data-webdav; then |
| echo "✅ 数据恢复成功" |
| else |
| echo "⚠️ 数据恢复失败,将使用新的浏览器实例" |
| fi |
| fi |
| echo "" |
| else |
| echo "==========================================" |
| echo "⚠️ 未配置数据持久化" |
| echo "==========================================" |
| echo "如需保存浏览器登录状态,请配置以下环境变量:" |
| echo " - WEBDAV_URL: https://rebun.infini-cloud.net/dav" |
| echo " - WEBDAV_USER: iyougame" |
| echo " - WEBDAV_PASS: exzgmqInkoFADbjOx1ak_reGVIf_ptIZxYUtBFp3mLw" |
| echo "" |
| echo "配置后,登录完成后运行:npm run save-data-webdav" |
| echo "" |
| fi |
|
|
| |
| echo "==========================================" |
| echo "🚀 启动 WebAI2API 服务..." |
| echo "==========================================" |
| echo "注意:浏览器初始化可能需要 30-60 秒" |
| echo "" |
|
|
| |
| exec node supervisor.js -xvfb -vnc -port $PORT |
|
|