trading.ai/README_Docker.md
2025-09-23 16:12:18 +08:00

178 lines
3.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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的强大性能**