start.sh 1.21 KB
#!/usr/bin/env bash
# =============================================================================
# OmniShopAgent - 启动脚本
# 启动 Streamlit 应用
# =============================================================================
set -euo pipefail

SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
VENV_DIR="${VENV_DIR:-$PROJECT_ROOT/venv}"
STREAMLIT_PORT="${STREAMLIT_PORT:-6008}"
STREAMLIT_HOST="${STREAMLIT_HOST:-0.0.0.0}"

cd "$PROJECT_ROOT"

# 激活虚拟环境
if [ -d "$VENV_DIR" ]; then
    echo "激活虚拟环境: $VENV_DIR"
    set +u
    source "$VENV_DIR/bin/activate"
    set -u
else
    echo "警告: 未找到虚拟环境 $VENV_DIR,使用当前 Python"
fi

echo "=========================================="
echo "OmniShopAgent 启动"
echo "=========================================="

echo "[1/1] 启动 Streamlit (端口 $STREAMLIT_PORT)..."
echo ""
echo "  访问: http://$STREAMLIT_HOST:$STREAMLIT_PORT"
echo "  按 Ctrl+C 停止"
echo "=========================================="

exec streamlit run app.py \
    --server.port="$STREAMLIT_PORT" \
    --server.address="$STREAMLIT_HOST" \
    --server.headless=true \
    --browser.gatherUsageStats=false