# 期货智析平台 - Docker 部署指南 ## 📋 部署前准备 ### 1. 环境要求 - Docker Desktop for Windows(已安装并运行) - Windows 10/11 专业版或家庭版(WSL2后端) - 至少 2GB 可用内存 - 至少 5GB 磁盘空间 ### 2. 检查Docker状态 ```powershell docker --version docker-compose --version ``` ## 🚀 快速部署 ### 方法一:使用部署脚本(推荐) 1. 双击运行 `deploy.bat` 2. 等待自动完成构建和部署 3. 访问 http://localhost:9600 ### 方法二:手动部署 ```powershell # 进入项目目录 cd e:\docker_workspace\cobot2.0_WorkHorse\app\working\workspaces\default\share_data\project\market_data_colector_platform\buffer_platform # 停止旧容器 docker-compose down # 构建镜像 docker-compose build --no-cache # 启动服务 docker-compose up -d ``` ## 🌐 访问地址 部署成功后,可访问以下地址: | 服务 | 地址 | |------|------| | 主页 | http://localhost:9600 | | 品种分析 | http://localhost:9600/futures-analysis | | AI配置 | http://localhost:9600/ai-config | | API文档 | http://localhost:9600/docs | | 健康检查 | http://localhost:9600/api/v1/health | ## 🛠️ 日常管理 ### 使用管理脚本 双击运行 `manage.bat`,可选择: 1. 启动服务 2. 停止服务 3. 重启服务 4. 查看日志 5. 查看状态 6. 进入容器 7. 清理资源 ### 常用Docker命令 ```powershell # 查看容器状态 docker-compose ps # 查看实时日志 docker-compose logs -f # 查看最近100行日志 docker-compose logs --tail=100 # 重启服务 docker-compose restart # 停止服务 docker-compose stop # 启动服务 docker-compose start # 停止并删除容器(保留数据) docker-compose down # 完全清理(包括数据卷) docker-compose down -v # 进入容器bash docker exec -it futures-buffer-platform /bin/bash # 查看容器资源使用 docker stats futures-buffer-platform ``` ## 📁 目录结构 ``` buffer_platform/ ├── data/ # SQLite数据库(自动创建) ├── logs/ # 日志文件(自动创建) ├── app/ │ └── static/ # 前端静态文件 ├── docker-compose.yml # Docker编排配置 ├── Dockerfile # Docker镜像构建文件 ├── deploy.bat # 一键部署脚本 └── manage.bat # 管理脚本 ``` ## 🔧 配置说明 ### 环境变量 在 `docker-compose.yml` 中可配置: | 变量 | 说明 | 默认值 | |------|------|--------| | BUFFER_DB_PATH | 数据库路径 | /app/data/buffer.db | | BUFFER_HOST | 服务监听地址 | 0.0.0.0 | | BUFFER_PORT | 服务端口 | 8600 | | CACHE_TTL | 缓存过期时间(秒) | 300 | | BUFFER_LOG_LEVEL | 日志级别 | INFO | | MAX_WORKERS | 并发采集数 | 2 | | TZ | 时区 | Asia/Shanghai | ### 端口映射 - 宿主机端口:9600 - 容器端口:8600 如需修改端口,编辑 `docker-compose.yml` 中的 `ports` 配置: ```yaml ports: - "你想要的端口:8600" ``` ## 🔍 故障排查 ### 1. 容器无法启动 ```powershell # 查看详细日志 docker-compose logs # 检查端口占用 netstat -ano | findstr "9600" ``` ### 2. 数据库问题 ```powershell # 进入容器检查数据库 docker exec -it futures-buffer-platform ls -la /app/data ``` ### 3. 重新构建镜像 ```powershell # 清理旧镜像 docker-compose down docker system prune -a # 重新构建 docker-compose build --no-cache docker-compose up -d ``` ### 4. 查看健康状态 ```powershell # 查看容器健康检查状态 docker inspect --format='{{.State.Health.Status}}' futures-buffer-platform ``` ## 🔄 更新部署 当代码有更新时: ```powershell # 方法一:使用部署脚本 deploy.bat # 方法二:手动更新 docker-compose down docker-compose build --no-cache docker-compose up -d ``` ## 📊 监控和日志 ### 实时日志 ```powershell docker-compose logs -f buffer-platform ``` ### 容器资源监控 ```powershell docker stats futures-buffer-platform ``` ### 日志位置 - 容器内:/app/logs/ - 宿主机:./logs/ ## 🗄️ 数据备份 ### 备份数据库 ```powershell docker cp futures-buffer-platform:/app/data/buffer.db ./backup_buffer.db ``` ### 恢复数据库 ```powershell docker cp ./backup_buffer.db futures-buffer-platform:/app/data/buffer.db docker-compose restart ``` ## 🎯 生产环境建议 1. **修改默认端口**:避免端口冲突 2. **配置日志轮转**:在docker-compose.yml中添加: ```yaml logging: driver: "json-file" options: max-size: "10m" max-file: "3" ``` 3. **数据卷备份**:定期备份data目录 4. **监控资源**:使用docker stats监控资源使用 5. **设置重启策略**:已配置为 `unless-stopped` ## 📞 技术支持 如遇问题,请检查: 1. Docker Desktop是否正常运行 2. 端口9600是否被占用 3. 查看容器日志:`docker-compose logs` 4. 检查健康状态:`docker-compose ps`