Initial commit: stock market platform
This commit is contained in:
56
scripts/dev-windows.ps1
Normal file
56
scripts/dev-windows.ps1
Normal file
@@ -0,0 +1,56 @@
|
||||
# Windows 本地开发启动脚本
|
||||
# 在项目根目录运行:.\scripts\dev-windows.ps1
|
||||
|
||||
$root = Split-Path -Parent $PSScriptRoot
|
||||
Set-Location $root
|
||||
|
||||
Write-Host "=== 股票行情平台 - Windows 本地开发 ===" -ForegroundColor Cyan
|
||||
|
||||
# 1. 启动 PostgreSQL + Redis
|
||||
Write-Host "`n[1/4] 启动数据库服务 (Docker)..." -ForegroundColor Yellow
|
||||
docker-compose -f docker-compose.dev.yml up -d
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Write-Host "错误:Docker 未安装或未启动,请先安装 Docker Desktop" -ForegroundColor Red
|
||||
exit 1
|
||||
}
|
||||
Start-Sleep -Seconds 3
|
||||
|
||||
# 2. 后端虚拟环境
|
||||
Write-Host "`n[2/4] 启动后端 (FastAPI)..." -ForegroundColor Yellow
|
||||
Set-Location "$root\backend"
|
||||
|
||||
if (-not (Test-Path "venv")) {
|
||||
Write-Host " 创建虚拟环境..."
|
||||
python -m venv venv
|
||||
.\venv\Scripts\Activate.ps1
|
||||
pip install -r requirements.txt
|
||||
} else {
|
||||
.\venv\Scripts\Activate.ps1
|
||||
}
|
||||
|
||||
# 后台运行 FastAPI
|
||||
Start-Process powershell -ArgumentList "-NoExit", "-Command", `
|
||||
"Set-Location '$root\backend'; .\venv\Scripts\Activate.ps1; uvicorn app.main:app --reload --port 8000" `
|
||||
-WindowStyle Normal
|
||||
|
||||
# 3. Celery Worker(Windows 用 --pool=solo)
|
||||
Write-Host "`n[3/4] 启动 Celery Worker..." -ForegroundColor Yellow
|
||||
Start-Process powershell -ArgumentList "-NoExit", "-Command", `
|
||||
"Set-Location '$root\backend'; .\venv\Scripts\Activate.ps1; celery -A celery_app.worker worker -l info --pool=solo" `
|
||||
-WindowStyle Normal
|
||||
|
||||
# 4. 前端
|
||||
Write-Host "`n[4/4] 启动前端 (Vite)..." -ForegroundColor Yellow
|
||||
Set-Location "$root\frontend"
|
||||
if (-not (Test-Path "node_modules")) {
|
||||
npm install
|
||||
}
|
||||
Start-Process powershell -ArgumentList "-NoExit", "-Command", `
|
||||
"Set-Location '$root\frontend'; npm run dev" `
|
||||
-WindowStyle Normal
|
||||
|
||||
Write-Host "`n=== 启动完成 ===" -ForegroundColor Green
|
||||
Write-Host "前端: http://localhost:5173" -ForegroundColor Cyan
|
||||
Write-Host "后端 API: http://localhost:8000/api/docs" -ForegroundColor Cyan
|
||||
Write-Host "PostgreSQL: localhost:5432" -ForegroundColor Cyan
|
||||
Write-Host "Redis: localhost:6379" -ForegroundColor Cyan
|
||||
Reference in New Issue
Block a user