update README
This commit is contained in:
parent
6c70fe2109
commit
9032a75118
269
README.md
269
README.md
@ -92,7 +92,10 @@ tianfeng_task/
|
|||||||
├── api/ # API接口定义
|
├── api/ # API接口定义
|
||||||
│ ├── task_api.py # 任务相关API
|
│ ├── task_api.py # 任务相关API
|
||||||
│ ├── workflow_api.py # 工作流相关API
|
│ ├── workflow_api.py # 工作流相关API
|
||||||
│ └── component_api.py # 组件相关API
|
│ ├── component_api.py # 组件相关API
|
||||||
|
│ ├── task_instance_api.py # 任务实例相关API
|
||||||
|
│ ├── common_params_api.py # 通用参数API
|
||||||
|
│ └── models/ # API模型定义
|
||||||
├── services/ # 业务服务层
|
├── services/ # 业务服务层
|
||||||
│ ├── task_service.py # 任务服务
|
│ ├── task_service.py # 任务服务
|
||||||
│ ├── workflow_service.py # 工作流服务
|
│ ├── workflow_service.py # 工作流服务
|
||||||
@ -161,6 +164,10 @@ tianfeng_task/
|
|||||||
│ ├── integration/ # 集成测试
|
│ ├── integration/ # 集成测试
|
||||||
│ └── fixtures/ # 测试数据
|
│ └── fixtures/ # 测试数据
|
||||||
├── app.py # 应用入口
|
├── app.py # 应用入口
|
||||||
|
├── Dockerfile # Docker构建文件
|
||||||
|
├── docker-compose.yml # Docker Compose配置
|
||||||
|
├── .env.example # 环境变量示例
|
||||||
|
├── .dockerignore # Docker忽略文件
|
||||||
└── requirements.txt # 依赖包列表
|
└── requirements.txt # 依赖包列表
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -321,37 +328,6 @@ tianfeng_task/
|
|||||||
- 展示任务执行日志和变量值
|
- 展示任务执行日志和变量值
|
||||||
- 提供任务暂停、取消、重试等操作
|
- 提供任务暂停、取消、重试等操作
|
||||||
|
|
||||||
### 2. API接口交互
|
|
||||||
|
|
||||||
系统提供RESTful API接口,支持第三方系统集成:
|
|
||||||
|
|
||||||
- **任务管理API**:
|
|
||||||
- `GET /api/tasks`:获取任务列表
|
|
||||||
- `POST /api/tasks`:创建新任务
|
|
||||||
- `GET /api/tasks/{id}`:获取任务详情
|
|
||||||
- `PUT /api/tasks/{id}`:更新任务
|
|
||||||
- `DELETE /api/tasks/{id}`:删除任务
|
|
||||||
- `POST /api/tasks/{id}/execute`:执行任务
|
|
||||||
- `POST /api/tasks/{id}/cancel`:取消任务
|
|
||||||
|
|
||||||
- **工作流管理API**:
|
|
||||||
- `GET /api/workflows/{id}`:获取工作流定义
|
|
||||||
- `POST /api/workflows`:保存工作流定义
|
|
||||||
- `GET /api/workflows/{id}/validate`:验证工作流定义
|
|
||||||
|
|
||||||
- **编辑器API**:
|
|
||||||
- `POST /api/editor/save`:保存编辑内容
|
|
||||||
- `POST /api/editor/undo`:撤销操作
|
|
||||||
- `POST /api/editor/redo`:重做操作
|
|
||||||
- `POST /api/editor/backup`:创建备份
|
|
||||||
- `GET /api/editor/history`:获取编辑历史
|
|
||||||
|
|
||||||
- **智能服务API**(已设计,尚未实现):
|
|
||||||
- `POST /api/intelligent/analyze`:分析任务流程
|
|
||||||
- `POST /api/intelligent/optimize`:优化任务流程
|
|
||||||
- `POST /api/intelligent/search`:知识检索
|
|
||||||
- `POST /api/intelligent/vectorize`:向量化数据
|
|
||||||
|
|
||||||
## 技术栈
|
## 技术栈
|
||||||
|
|
||||||
- **后端**:FastAPI (Python)
|
- **后端**:FastAPI (Python)
|
||||||
@ -373,13 +349,236 @@ tianfeng_task/
|
|||||||
- 数据库(MySQL/PostgreSQL)
|
- 数据库(MySQL/PostgreSQL)
|
||||||
- Node.js 14+(前端开发)
|
- Node.js 14+(前端开发)
|
||||||
|
|
||||||
|
### 详细运行方法
|
||||||
|
|
||||||
|
#### 方法一:使用Docker运行(推荐)
|
||||||
|
|
||||||
|
Docker是最简单的部署方式,可以避免环境配置问题。
|
||||||
|
|
||||||
|
##### 1. 构建并运行Docker镜像
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 克隆代码仓库
|
||||||
|
git clone http://192.168.1.2:8418/jzw/tianfeng_task_modules.git
|
||||||
|
cd tianfeng_task
|
||||||
|
|
||||||
|
# 构建Docker镜像
|
||||||
|
docker build -t tianfeng-task:latest .
|
||||||
|
|
||||||
|
# 运行Docker容器
|
||||||
|
docker run -d -p 8000:8000 --name tianfeng-task-container tianfeng-task:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
##### 2. 使用Docker Compose运行(包含数据库和缓存)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 克隆代码仓库
|
||||||
|
git clone http://192.168.1.2:8418/jzw/tianfeng_task_modules.git
|
||||||
|
cd tianfeng_task
|
||||||
|
|
||||||
|
# 使用Docker Compose构建并启动所有服务
|
||||||
|
docker-compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
##### 3. 验证服务是否正常运行
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 查看容器状态
|
||||||
|
docker ps
|
||||||
|
|
||||||
|
# 或者使用Docker Compose查看
|
||||||
|
docker-compose ps
|
||||||
|
|
||||||
|
# 查看应用日志
|
||||||
|
docker logs tianfeng-task-container
|
||||||
|
# 或者
|
||||||
|
docker-compose logs app
|
||||||
|
```
|
||||||
|
|
||||||
|
##### 4. 停止和删除容器
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 停止容器
|
||||||
|
docker stop tianfeng-task-container
|
||||||
|
docker rm tianfeng-task-container
|
||||||
|
|
||||||
|
# 或者使用Docker Compose
|
||||||
|
docker-compose down
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 方法二:本地运行(不同操作系统)
|
||||||
|
|
||||||
|
##### 前提条件
|
||||||
|
- 安装Conda(Miniconda或Anaconda)
|
||||||
|
- 安装Git
|
||||||
|
- 安装数据库(MySQL或PostgreSQL)
|
||||||
|
|
||||||
|
##### Windows系统
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. 克隆代码仓库
|
||||||
|
git clone http://192.168.1.2:8418/jzw/tianfeng_task_modules.git
|
||||||
|
cd tianfeng_task
|
||||||
|
|
||||||
|
# 2. 创建并激活Conda环境 推荐使用3.11
|
||||||
|
conda create -n pytf python=3.11
|
||||||
|
conda activate pytf
|
||||||
|
|
||||||
|
# 3. 安装依赖
|
||||||
|
pip install -r requirements.txt
|
||||||
|
|
||||||
|
# 4. 配置数据库连接
|
||||||
|
# 编辑 config/database.py 文件,设置正确的数据库连接信息
|
||||||
|
|
||||||
|
# 5. 启动应用
|
||||||
|
python app.py
|
||||||
|
```
|
||||||
|
|
||||||
|
### 数据库配置说明
|
||||||
|
|
||||||
|
在运行应用前,需要修改`config/database.py`文件中的数据库配置,将默认的数据库连接信息替换为您自己的本地或云上的MySQL数据库:
|
||||||
|
|
||||||
|
```python
|
||||||
|
# 数据库连接配置
|
||||||
|
DB_CONFIG = ConfigDict(
|
||||||
|
default=dict(
|
||||||
|
dialect='mysql',
|
||||||
|
driver='pymysql',
|
||||||
|
username='your_username', # 修改为您的数据库用户名
|
||||||
|
password='your_password', # 修改为您的数据库密码
|
||||||
|
host='your_host', # 修改为您的数据库主机地址,本地通常为localhost或127.0.0.1,云数据库使用对应的连接地址
|
||||||
|
port=3306, # 修改为您的数据库端口,默认MySQL为3306
|
||||||
|
database='tianfeng_task', # 数据库名称,可以保持不变或修改为您想使用的数据库名
|
||||||
|
charset='utf8mb4'
|
||||||
|
),
|
||||||
|
test=dict(
|
||||||
|
dialect='sqlite',
|
||||||
|
database=':memory:'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
```
|
||||||
|
|
||||||
|
如果您使用的是云数据库(如阿里云RDS、AWS RDS等),请确保:
|
||||||
|
1. 数据库已创建并可以访问
|
||||||
|
2. 数据库用户有足够的权限(至少需要CREATE、ALTER、SELECT、INSERT、UPDATE、DELETE权限)
|
||||||
|
3. 数据库服务器的防火墙允许从您的应用服务器访问
|
||||||
|
|
||||||
|
您也可以通过环境变量来设置数据库连接信息,这样就不需要修改源代码:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Windows
|
||||||
|
set TIANFENG_ENV=default
|
||||||
|
set DB_HOST=your_host
|
||||||
|
set DB_PORT=3306
|
||||||
|
set DB_USER=your_username
|
||||||
|
set DB_PASSWORD=your_password
|
||||||
|
set DB_NAME=tianfeng_task
|
||||||
|
|
||||||
|
# macOS/Linux
|
||||||
|
export TIANFENG_ENV=default
|
||||||
|
export DB_HOST=your_host
|
||||||
|
export DB_PORT=3306
|
||||||
|
export DB_USER=your_username
|
||||||
|
export DB_PASSWORD=your_password
|
||||||
|
export DB_NAME=tianfeng_task
|
||||||
|
```
|
||||||
|
|
||||||
|
系统启动时会自动检查数据库是否存在,如果不存在会自动创建数据库和所需的表结构。
|
||||||
|
|
||||||
|
##### macOS系统
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. 克隆代码仓库
|
||||||
|
git clone http://192.168.1.2:8418/jzw/tianfeng_task_modules.git
|
||||||
|
cd tianfeng_task
|
||||||
|
|
||||||
|
# 2. 创建并激活Conda环境
|
||||||
|
conda create -n pytf python=3.11
|
||||||
|
conda activate pytf
|
||||||
|
|
||||||
|
# 3. 安装依赖
|
||||||
|
pip install -r requirements.txt
|
||||||
|
|
||||||
|
# 4. 配置数据库连接
|
||||||
|
# 编辑 config/database.py 文件,设置正确的数据库连接信息
|
||||||
|
|
||||||
|
# 5. 启动应用
|
||||||
|
python app.py
|
||||||
|
```
|
||||||
|
|
||||||
|
##### Linux系统
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. 克隆代码仓库
|
||||||
|
git clone http://192.168.1.2:8418/jzw/tianfeng_task_modules.git
|
||||||
|
cd tianfeng_task
|
||||||
|
|
||||||
|
# 2. 创建并激活Conda环境
|
||||||
|
conda create -n pytf python=3.11
|
||||||
|
conda activate pytf
|
||||||
|
|
||||||
|
# 3. 安装依赖
|
||||||
|
pip install -r requirements.txt
|
||||||
|
|
||||||
|
# 4. 配置数据库连接
|
||||||
|
# 编辑 config/database.py 文件,设置正确的数据库连接信息
|
||||||
|
|
||||||
|
# 5. 启动应用
|
||||||
|
python app.py
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 方法三:使用虚拟环境(不使用Conda)(不推荐)
|
||||||
|
|
||||||
|
**注意:此方法不推荐使用**,因为项目依赖复杂,使用Conda可以更好地管理依赖关系和解决潜在的兼容性问题。此外,某些依赖可能需要特定的编译环境,Conda能更好地处理这些情况。如果您仍然希望使用此方法,请按照以下步骤操作:
|
||||||
|
|
||||||
|
##### Windows系统
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. 克隆代码仓库
|
||||||
|
git clone http://192.168.1.2:8418/jzw/tianfeng_task_modules.git
|
||||||
|
cd tianfeng_task
|
||||||
|
|
||||||
|
# 2. 创建并激活虚拟环境
|
||||||
|
python -m venv venv
|
||||||
|
.\venv\Scripts\activate
|
||||||
|
|
||||||
|
# 3. 安装依赖
|
||||||
|
pip install -r requirements.txt
|
||||||
|
|
||||||
|
# 4. 配置数据库连接
|
||||||
|
# 编辑 config/database.py 文件
|
||||||
|
|
||||||
|
# 5. 启动应用
|
||||||
|
python app.py
|
||||||
|
```
|
||||||
|
|
||||||
|
##### macOS/Linux系统
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. 克隆代码仓库
|
||||||
|
git clone http://192.168.1.2:8418/jzw/tianfeng_task_modules.git
|
||||||
|
cd tianfeng_task
|
||||||
|
|
||||||
|
# 2. 创建并激活虚拟环境
|
||||||
|
python -m venv venv
|
||||||
|
source venv/bin/activate
|
||||||
|
|
||||||
|
# 3. 安装依赖
|
||||||
|
pip install -r requirements.txt
|
||||||
|
|
||||||
|
# 4. 配置数据库连接
|
||||||
|
# 编辑 config/database.py 文件
|
||||||
|
|
||||||
|
# 5. 启动应用
|
||||||
|
python app.py
|
||||||
|
```
|
||||||
|
|
||||||
### 安装步骤
|
### 安装步骤
|
||||||
|
|
||||||
1. 克隆代码库
|
1. 克隆代码库
|
||||||
2. 安装依赖:`pip install -r requirements.txt`
|
2. 安装依赖:`pip install -r requirements.txt`
|
||||||
3. 配置数据库连接:修改`config/database.py`
|
3. 配置数据库连接:修改`config/database.py`
|
||||||
4. 初始化数据库:`python -m scripts.run_migration`
|
4. 启动应用:`python app.py`
|
||||||
5. 启动应用:`python app.py`
|
|
||||||
|
|
||||||
## 使用示例
|
## 使用示例
|
||||||
|
|
||||||
@ -446,7 +645,7 @@ tianfeng_task/
|
|||||||
1. 克隆代码仓库
|
1. 克隆代码仓库
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone <仓库地址>
|
git clone http://192.168.1.2:8418/jzw/tianfeng_task_modules.git
|
||||||
cd tianfeng_task
|
cd tianfeng_task
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -1,19 +1,19 @@
|
|||||||
# requirements.txt
|
# requirements.txt
|
||||||
# 数据库相关
|
# 数据库相关
|
||||||
sqlalchemy>=1.4.0
|
sqlalchemy
|
||||||
alembic>=1.7.0
|
alembic
|
||||||
pymysql
|
pymysql
|
||||||
redis
|
redis
|
||||||
cryptography
|
cryptography
|
||||||
|
|
||||||
# Web框架
|
# Web框架
|
||||||
fastapi>=0.68.0
|
fastapi
|
||||||
uvicorn>=0.15.0
|
uvicorn
|
||||||
pydantic>=1.8.0
|
pydantic
|
||||||
|
|
||||||
# 工具库
|
# 工具库
|
||||||
python-dotenv>=0.19.0
|
python-dotenv
|
||||||
croniter>=1.0.0
|
croniter
|
||||||
jsonschema
|
jsonschema
|
||||||
requests
|
requests
|
||||||
# 日志
|
# 日志
|
||||||
|
Loading…
x
Reference in New Issue
Block a user