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

3.4 KiB
Raw Permalink Blame History

TradingAI Docker 部署指南 (MySQL版本)

📋 概述

TradingAI 已迁移至 MySQL 数据库,支持更高性能和更好的并发访问。本指南介绍如何使用 Docker 部署系统。

🚀 快速开始

1. 环境准备

确保已安装 Docker 和 Docker Compose:

docker --version
docker-compose --version

2. 配置数据库连接

复制环境变量模板:

cp .env.example .env

编辑 .env 文件,配置你的 MySQL 数据库连接信息:

MYSQL_HOST=your-mysql-host
MYSQL_PORT=3306
MYSQL_USER=your-username
MYSQL_PASSWORD=your-password
MYSQL_DATABASE=tradingai

3. 构建和启动

构建镜像并启动服务:

# 构建镜像
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

🛠 管理命令

查看服务状态

docker-compose ps

查看日志

# Web服务日志
docker-compose logs -f trading-web

# 采集服务日志
docker-compose logs -f trading-collector

重启服务

# 重启Web服务
docker-compose restart trading-web

# 重启所有服务
docker-compose restart

停止服务

# 停止所有服务
docker-compose down

# 停止并删除volumes
docker-compose down -v

🔧 高级配置

自定义配置文件

将配置文件放在 ./config/ 目录下,容器会自动挂载。

日志查看

日志文件位于 ./logs/ 目录下:

  • trading.log: 应用运行日志
  • error.log: 错误日志

环境变量覆盖

你可以通过环境变量覆盖配置:

export MYSQL_HOST=new-host
docker-compose up -d

📈 监控和维护

健康检查

系统自带健康检查,访问: http://localhost:8080/api/stats

数据库状态

检查MySQL连接状态和数据统计

curl http://localhost:8080/api/stats

性能监控

查看容器资源使用:

docker stats trading-ai-web-mysql

🚨 故障排除

1. 数据库连接失败

检查MySQL配置和网络连接

docker-compose logs trading-web | grep -i mysql

2. 端口冲突

修改docker-compose.yml中的端口映射

ports:
  - "8081:8080"  # 改为8081

3. 容器启动失败

查看详细错误信息:

docker-compose logs trading-web

4. 重建镜像

如果代码更新,需要重建镜像:

docker-compose build --no-cache
docker-compose up -d

🔐 安全建议

  1. 环境变量: 不要将 .env 文件提交到版本控制
  2. 数据库密码: 使用强密码并定期更换
  3. 网络安全: 在生产环境中配置防火墙规则
  4. SSL: 生产环境建议启用HTTPS

📚 相关文档


🎉 现在你的交易系统已经运行在Docker容器中享受云端MySQL的强大性能