# 天工智能体平台 — 另一台电脑部署文档 > 完整步骤,从零开始部署到一台新的 Windows 电脑。 --- ## 一、前提条件 | 组件 | 版本要求 | 下载地址 | |------|------|------| | Python | 3.11+ | https://www.python.org/downloads/ | | Node.js | 18+ | https://nodejs.org/ | | MySQL | 5.7+ | https://dev.mysql.com/downloads/ | | Redis | 7+ | https://github.com/microsoftarchive/redis/releases 或 Docker | | pnpm | 8+ | `npm install -g pnpm` | | Git | 任意 | https://git-scm.com/ (可选) | > 安装 Python / Node.js 时确保勾选 "Add to PATH"。 --- ## 二、获取项目文件 ### 方式 A:直接拷贝(推荐,已包含数据库备份) 将本机 `D:\aaa\aiagent` 整个目录拷贝到目标机 `D:\aaa\aiagent`。 需要拷贝的目录结构: ``` D:\aaa\aiagent\ ├── agent_db_backup.sql # 数据库备份文件(79MB) ├── backend/ # 后端源码 ├── frontend/ # 前端源码 ├── scripts/ # 启动脚本 ├── docs/ # 文档(含本文档) └── docker-compose.dev.yml # Docker 开发环境 ``` > 不需要拷贝 `backend\venv`、`frontend\node_modules`、`__pycache__` 等(减少拷贝量)。 ### 方式 B:Git 克隆 ```powershell git clone http://101.43.95.130:3001/admin/aiagent.git D:\aaa\aiagent cd D:\aaa\aiagent git checkout rjb_win_dev ``` > 注意:Git 克隆不包含数据库备份文件,需单独传入 `agent_db_backup.sql`。 --- ## 三、导入数据库 ### 1. 创建数据库 ```powershell mysql -uroot -p123456 -e "CREATE DATABASE IF NOT EXISTS agent_db DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci;" ``` > 如果目标机 MySQL root 密码不同,替换 `123456` 为实际密码。 ### 2. 导入备份 ```powershell cd D:\aaa\aiagent mysql -uroot -p123456 agent_db < agent_db_backup.sql ``` 等待约 1-2 分钟完成导入。导入后验证: ```powershell mysql -uroot -p123456 -e "USE agent_db; SHOW TABLES;" ``` 应看到 50+ 张表。 --- ## 四、安装后端 ```powershell cd D:\aaa\aiagent\backend # 创建虚拟环境 python -m venv venv # 激活虚拟环境 venv\Scripts\Activate.ps1 # 安装 Python 依赖 pip install -r requirements.txt # 数据库迁移(确保与模型同步) alembic upgrade head ``` ### 检查 .env 配置 确认 `backend\.env` 中的数据库连接正确: ``` DATABASE_URL=mysql+pymysql://root:123456@127.0.0.1:3306/agent_db?charset=utf8mb4 ``` > 如果目标机 MySQL root 密码不是 `123456`,修改此行。 --- ## 五、安装前端 ```powershell cd D:\aaa\aiagent\frontend # 安装依赖 pnpm install ``` --- ## 六、启动服务 ### 一键启动(推荐) ```powershell cd D:\aaa\aiagent powershell -ExecutionPolicy Bypass -File .\scripts\startup\start_aiagent.ps1 ``` 脚本会自动启动:Redis → 后端API (8037) → Celery Worker → Celery Beat → 前端 (3001) ### 或手动逐个启动(排查问题时使用) 分别在 5 个 PowerShell 终端中执行: **终端 1 — Redis** ```powershell # 如果已有 Redis 服务则跳过 cd D:\aaa\aiagent\backend\redis .\redis-server.exe --port 6379 ``` **终端 2 — 后端 API** ```powershell cd D:\aaa\aiagent\backend venv\Scripts\Activate.ps1 uvicorn app.main:app --host 0.0.0.0 --port 8037 ``` **终端 3 — Celery Worker** ```powershell cd D:\aaa\aiagent\backend venv\Scripts\Activate.ps1 celery -A app.core.celery_app worker --loglevel=info --pool=threads --concurrency=8 ``` **终端 4 — Celery Beat** ```powershell cd D:\aaa\aiagent\backend venv\Scripts\Activate.ps1 celery -A app.core.celery_app beat --loglevel=info ``` **终端 5 — 前端** ```powershell cd D:\aaa\aiagent\frontend $env:AIAGENT_API_PROXY='http://127.0.0.1:8037' pnpm dev --port 3001 ``` --- ## 七、验证 | 服务 | 地址 | |------|------| | 前端界面 | http://localhost:3001 | | API 文档 | http://localhost:8037/docs | | 登录账号 | admin / 123456 | --- ## 八、停止服务 ```powershell # 一键停止 powershell -ExecutionPolicy Bypass -File .\scripts\startup\stop_aiagent.ps1 # 或直接关闭各个 PowerShell 窗口 ``` --- ## 九、常见问题 | 问题 | 原因 | 解决 | |------|------|------| | 数据库连接失败 | `.env` 中密码不对 | 修改 `DATABASE_URL` 中的密码 | | 端口 8037 被占用 | 已有程序使用 | 脚本自动切换到 8041,或手动指定 | | Redis 启动失败 | Redis 未安装 | 安装 Redis Windows 版或用 Docker 跑 | | celery Worker 卡住 | Windows fork 问题 | 使用 `--pool=threads`(脚本已默认) | | 前端请求 500 | API 代理端口不一致 | 检查 `AIAGENT_API_PROXY` 指向正确端口 | | Tesseract 不可用 | 目标机未装 OCR | 可忽略,仅影响图片 OCR 功能 | --- ## 十、使用 Docker 替代本地服务(可选) 如果不想在目标机安装 MySQL 和 Redis,可以用 Docker 运行: ```powershell # 启动 MySQL + Redis 容器 docker-compose -f docker-compose.dev.yml up -d # 修改 .env 中的 DATABASE_URL # DATABASE_URL=mysql+pymysql://root:dev123@127.0.0.1:3306/agent_db_dev?charset=utf8mb4 ``` 然后导入备份到 Docker MySQL: ```powershell docker exec -i aiagent-dev-mysql mysql -uroot -pdev123 agent_db_dev < agent_db_backup.sql ``` --- > 最后更新:2026-06-28