178 lines
3.4 KiB
Markdown
178 lines
3.4 KiB
Markdown
# 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的强大性能!** |