# TradingAI Docker 部署指南 (MySQL版本) ## 📋 概述 TradingAI 已迁移至 MySQL 数据库,支持更高性能和更好的并发访问。本指南介绍如何使用 Docker 部署系统。 ## 🚀 快速开始 ### 1. 环境准备 确保已安装 Docker 和 Docker Compose: ```bash docker --version docker-compose --version ``` ### 2. 配置数据库连接 复制环境变量模板: ```bash cp .env.example .env ``` 编辑 `.env` 文件,配置你的 MySQL 数据库连接信息: ```bash MYSQL_HOST=your-mysql-host MYSQL_PORT=3306 MYSQL_USER=your-username MYSQL_PASSWORD=your-password MYSQL_DATABASE=tradingai ``` ### 3. 构建和启动 构建镜像并启动服务: ```bash # 构建镜像 docker-compose build # 启动Web服务 docker-compose up -d trading-web # 查看日志 docker-compose logs -f trading-web ``` ### 4. 访问应用 打开浏览器访问: http://localhost:8080 ## 📊 服务说明 ### Web应用服务 (trading-web) - **容器名**: `trading-ai-web-mysql` - **端口**: 8080 - **功能**: - 增强时间线显示 - 创新高回踩确认策略 - 实时信号监控 - MySQL云端数据库 ### 数据采集服务 (trading-collector) - **容器名**: `trading-ai-collector-mysql` - **功能**: 自动执行市场扫描 - **启动**: `docker-compose up -d trading-collector` ## 🛠 管理命令 ### 查看服务状态 ```bash docker-compose ps ``` ### 查看日志 ```bash # Web服务日志 docker-compose logs -f trading-web # 采集服务日志 docker-compose logs -f trading-collector ``` ### 重启服务 ```bash # 重启Web服务 docker-compose restart trading-web # 重启所有服务 docker-compose restart ``` ### 停止服务 ```bash # 停止所有服务 docker-compose down # 停止并删除volumes docker-compose down -v ``` ## 🔧 高级配置 ### 自定义配置文件 将配置文件放在 `./config/` 目录下,容器会自动挂载。 ### 日志查看 日志文件位于 `./logs/` 目录下: - `trading.log`: 应用运行日志 - `error.log`: 错误日志 ### 环境变量覆盖 你可以通过环境变量覆盖配置: ```bash export MYSQL_HOST=new-host docker-compose up -d ``` ## 📈 监控和维护 ### 健康检查 系统自带健康检查,访问: http://localhost:8080/api/stats ### 数据库状态 检查MySQL连接状态和数据统计: ```bash curl http://localhost:8080/api/stats ``` ### 性能监控 查看容器资源使用: ```bash docker stats trading-ai-web-mysql ``` ## 🚨 故障排除 ### 1. 数据库连接失败 检查MySQL配置和网络连接: ```bash docker-compose logs trading-web | grep -i mysql ``` ### 2. 端口冲突 修改docker-compose.yml中的端口映射: ```yaml ports: - "8081:8080" # 改为8081 ``` ### 3. 容器启动失败 查看详细错误信息: ```bash docker-compose logs trading-web ``` ### 4. 重建镜像 如果代码更新,需要重建镜像: ```bash docker-compose build --no-cache docker-compose up -d ``` ## 🔐 安全建议 1. **环境变量**: 不要将 `.env` 文件提交到版本控制 2. **数据库密码**: 使用强密码并定期更换 3. **网络安全**: 在生产环境中配置防火墙规则 4. **SSL**: 生产环境建议启用HTTPS ## 📚 相关文档 - [MySQL版本迁移指南](README_MySQL.md) - [API接口文档](docs/api.md) - [策略说明](docs/strategy.md) --- 🎉 **现在你的交易系统已经运行在Docker容器中,享受云端MySQL的强大性能!**