update README

This commit is contained in:
靳中伟 2025-03-17 19:01:55 +08:00
parent 6c70fe2109
commit 9032a75118
2 changed files with 241 additions and 42 deletions

269
README.md
View File

@ -92,7 +92,10 @@ tianfeng_task/
├── api/ # API接口定义
│ ├── task_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/ # 业务服务层
│ ├── task_service.py # 任务服务
│ ├── workflow_service.py # 工作流服务
@ -161,6 +164,10 @@ tianfeng_task/
│ ├── integration/ # 集成测试
│ └── fixtures/ # 测试数据
├── app.py # 应用入口
├── Dockerfile # Docker构建文件
├── docker-compose.yml # Docker Compose配置
├── .env.example # 环境变量示例
├── .dockerignore # Docker忽略文件
└── 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)
@ -373,13 +349,236 @@ tianfeng_task/
- 数据库MySQL/PostgreSQL
- 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
```
#### 方法二:本地运行(不同操作系统)
##### 前提条件
- 安装CondaMiniconda或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. 克隆代码库
2. 安装依赖:`pip install -r requirements.txt`
3. 配置数据库连接:修改`config/database.py`
4. 初始化数据库:`python -m scripts.run_migration`
5. 启动应用:`python app.py`
4. 启动应用:`python app.py`
## 使用示例
@ -446,7 +645,7 @@ tianfeng_task/
1. 克隆代码仓库
```bash
git clone <仓库地址>
git clone http://192.168.1.2:8418/jzw/tianfeng_task_modules.git
cd tianfeng_task
```

View File

@ -1,19 +1,19 @@
# requirements.txt
# 数据库相关
sqlalchemy>=1.4.0
alembic>=1.7.0
sqlalchemy
alembic
pymysql
redis
cryptography
# Web框架
fastapi>=0.68.0
uvicorn>=0.15.0
pydantic>=1.8.0
fastapi
uvicorn
pydantic
# 工具库
python-dotenv>=0.19.0
croniter>=1.0.0
python-dotenv
croniter
jsonschema
requests
# 日志