功能细节优化
This commit is contained in:
106
backend/install.sh
Normal file
106
backend/install.sh
Normal file
@@ -0,0 +1,106 @@
|
||||
#!/bin/bash
|
||||
# 三大核心功能快速安装脚本(WSL/Linux)
|
||||
|
||||
set -e
|
||||
|
||||
echo "========================================="
|
||||
echo " Blackdata StockTerminal 核心功能安装"
|
||||
echo "========================================="
|
||||
echo ""
|
||||
|
||||
# 检查是否在 WSL/Linux 环境
|
||||
if [[ "$OSTYPE" != "linux-gnu"* ]]; then
|
||||
echo "⚠ 此脚本仅支持 WSL/Linux 环境"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 1. 安装系统依赖
|
||||
echo "[1/6] 检查并安装系统依赖..."
|
||||
sudo apt update
|
||||
sudo apt install -y postgresql postgresql-contrib redis-server python3-pip python3-venv
|
||||
|
||||
# 2. 启动服务
|
||||
echo ""
|
||||
echo "[2/6] 启动 PostgreSQL 和 Redis..."
|
||||
sudo service postgresql start
|
||||
sudo service redis-server start
|
||||
|
||||
# 验证服务
|
||||
if redis-cli ping > /dev/null 2>&1; then
|
||||
echo "✓ Redis 运行正常"
|
||||
else
|
||||
echo "⚠ Redis 启动失败,缓存将降级到内存模式"
|
||||
fi
|
||||
|
||||
# 3. 创建虚拟环境(如果不存在)
|
||||
if [ ! -d ".venv" ]; then
|
||||
echo ""
|
||||
echo "[3/6] 创建 Python 虚拟环境..."
|
||||
python3 -m venv .venv
|
||||
else
|
||||
echo ""
|
||||
echo "[3/6] 虚拟环境已存在,跳过创建"
|
||||
fi
|
||||
|
||||
# 4. 安装 Python 依赖
|
||||
echo ""
|
||||
echo "[4/6] 安装 Python 依赖包..."
|
||||
source .venv/bin/activate
|
||||
pip install --upgrade pip
|
||||
pip install -r requirements.txt
|
||||
|
||||
# 5. 配置环境变量
|
||||
echo ""
|
||||
echo "[5/6] 配置环境变量..."
|
||||
if [ ! -f ".env" ]; then
|
||||
if [ -f ".env.example" ]; then
|
||||
cp .env.example .env
|
||||
echo "✓ 已从 .env.example 创建 .env 文件"
|
||||
else
|
||||
echo "⚠ .env.example 不存在,请手动创建 .env 文件"
|
||||
fi
|
||||
|
||||
# 生成随机 SECRET_KEY
|
||||
SECRET_KEY=$(python3 -c "import secrets; print(secrets.token_urlsafe(32))")
|
||||
echo ""
|
||||
echo "生成的 SECRET_KEY(请添加到 .env):"
|
||||
echo "SECRET_KEY=$SECRET_KEY"
|
||||
echo ""
|
||||
else
|
||||
echo "✓ .env 文件已存在"
|
||||
fi
|
||||
|
||||
# 6. 初始化数据库
|
||||
echo ""
|
||||
echo "[6/6] 初始化数据库..."
|
||||
|
||||
# 检查 PostgreSQL 密码配置
|
||||
if grep -q "PG_PASSWORD=your_password" .env 2>/dev/null || grep -q "PG_PASSWORD=$" .env 2>/dev/null; then
|
||||
echo ""
|
||||
echo "⚠ 请先在 .env 中设置 PostgreSQL 密码:"
|
||||
echo " 1. 设置数据库密码: sudo -u postgres psql -c \"ALTER USER postgres PASSWORD 'your_password';\""
|
||||
echo " 2. 在 .env 中配置: PG_PASSWORD=your_password"
|
||||
echo ""
|
||||
echo "配置完成后,运行: python cli.py init"
|
||||
else
|
||||
python cli.py init
|
||||
echo "✓ 数据库初始化完成"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "========================================="
|
||||
echo " 安装完成!"
|
||||
echo "========================================="
|
||||
echo ""
|
||||
echo "下一步:"
|
||||
echo "1. 编辑 backend/.env 文件,配置数据库密码和其他选项"
|
||||
echo "2. 如果未初始化数据库,运行: python cli.py init"
|
||||
echo "3. 启动服务: python main.py"
|
||||
echo "4. 浏览器访问: http://localhost:8000"
|
||||
echo "5. 默认管理员: admin / admin123 (首次登录后务必修改密码)"
|
||||
echo "6. 测试功能: python test_core_features.py"
|
||||
echo ""
|
||||
echo "详细文档:"
|
||||
echo "- 升级指南: backend/UPGRADE_GUIDE.md"
|
||||
echo "- 配置说明: backend/ENV_CONFIG.md"
|
||||
echo ""
|
||||
Reference in New Issue
Block a user