3.8 KiB
3.8 KiB
智能算法展示平台 - 运行指南
系统要求
- Python 3.8+ 和 Node.js 18+
- 或者 Docker 和 Docker Compose
本地开发模式
后端服务
# 进入后端目录
cd backend
# 激活虚拟环境
source venv/bin/activate
# 启动服务
python -m uvicorn app.main:app --host 0.0.0.0 --port 8001 --reload
前端服务
# 进入前端目录
cd frontend
# 安装依赖
npm install
# 启动开发服务器
npm run dev
环境配置
在本地开发时,可以创建 .env 文件:
# backend/.env
DATABASE_URL=postgresql://admin:password@localhost:5432/algorithm_db
REDIS_URL=redis://localhost:6379/0
MINIO_ENDPOINT=localhost:9000
MINIO_ACCESS_KEY=minioadmin
MINIO_SECRET_KEY=minioadmin
MINIO_BUCKET_NAME=algorithm-data
MINIO_SECURE=false
OPENAI_API_KEY=your_openai_api_key_here
SECRET_KEY=your_secret_key_here
ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=30
# frontend/.env
VITE_API_BASE_URL=http://localhost:8001/api
服务地址
部署完成后,可通过以下地址访问服务:
- 前端应用: http://localhost:3000
- 后端API: http://localhost:8001
- API文档: http://localhost:8001/docs
- MinIO控制台: http://localhost:9001 (admin/minioadmin)
- PostgreSQL: localhost:5432
- Redis: localhost:6379
验证部署
检查服务状态
# 检查后端服务
curl http://localhost:8001/health
# 检查前端服务
curl http://localhost:3000
API测试
# 测试健康检查
curl http://localhost:8001/health
# 测试算法API
curl http://localhost:8001/api/v1/algorithms
# 测试API文档
open http://localhost:8001/docs
Docker Compose 部署
完整部署(适用于网络良好环境)
# 进入部署目录
cd deploy
# 运行部署脚本
./deploy.sh
网络受限环境部署
# 手动拉取镜像
docker pull postgres:14-alpine
docker pull redis:7-alpine
docker pull minio/minio:latest
docker pull python:3.9-slim
docker pull node:18-alpine
# 使用预拉取镜像的Compose文件
docker-compose -f compose-without-build.yml up -d
Docker环境变量
创建 .env 文件:
# 在 deploy 目录下创建 .env 文件
OPENAI_API_KEY=your_openai_api_key_here
SECRET_KEY=your_secret_key_here
Docker服务状态检查
# Docker Compose 环境
docker-compose -f docker-compose-full.yml ps
# 检查特定服务日志
docker-compose -f docker-compose-full.yml logs backend
docker-compose -f docker-compose-full.yml logs frontend
Docker常用命令
# 启动所有服务
docker-compose -f docker-compose-full.yml up -d
# 停止所有服务
docker-compose -f docker-compose-full.yml down
# 重建并启动服务
docker-compose -f docker-compose-full.yml up -d --build
# 查看服务日志
docker-compose -f docker-compose-full.yml logs -f
# 重启特定服务
docker-compose -f docker-compose-full.yml restart backend
故障排除
如果遇到问题,请参考 TROUBLESHOOTING.md 文档。
清理部署
# 停止并删除所有容器
docker-compose -f docker-compose-full.yml down
# 删除卷(会清除所有数据)
docker-compose -f docker-compose-full.yml down -v
# 清理未使用的Docker资源
docker system prune -a
性能调优
Docker资源限制
可以在 docker-compose.yml 中添加资源限制:
services:
backend:
# ... 其他配置
deploy:
resources:
limits:
cpus: '1.0'
memory: 2G
reservations:
cpus: '0.5'
memory: 1G
环境特定配置
根据部署环境调整配置:
- 开发环境: 使用较低的资源限制,启用热重载
- 测试环境: 适度的资源配置,禁用不必要的日志
- 生产环境: 充足的资源,启用监控和日志聚合