feat: 支持通过Flyway自动初始化数据库
- 将 starter 初始化脚本迁移到 db/migration,并保留 V1-V3 作为首批迁移 - 清理旧 sql/initdb 挂载与历史分段 SQL,避免 Docker 启动时重复导库 - 更新 README、应用配置和中间件编排,统一空库启动方式
This commit is contained in:
17
README.md
17
README.md
@@ -28,9 +28,14 @@ EasyFlow 是一个面向企业场景的 Java AI 应用开发平台,提供智
|
||||
## 快速启动(开发环境)
|
||||
|
||||
### 1. 初始化数据库
|
||||
在 MySQL 中导入:
|
||||
- `sql/01-easyflow-v2.ddl.sql`
|
||||
- `sql/02-easyflow-v2.data.sql`
|
||||
只需要提前创建空库,例如:
|
||||
|
||||
```sql
|
||||
CREATE DATABASE easyflow CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
```
|
||||
|
||||
表结构、Quartz 表和基础数据会在后端启动时由 Flyway 自动迁移完成。
|
||||
当前初始化脚本仅保留 3 段:`V1__quartz.sql`、`V2__easyflow_schema.sql`、`V3__easyflow_seed.sql`。
|
||||
|
||||
### 2. 启动后端
|
||||
在项目根目录执行:
|
||||
@@ -42,6 +47,8 @@ java -jar easyflow-starter/easyflow-starter-all/target/easyflow-starter-all-0.0.
|
||||
|
||||
默认端口:`8111`(见 `easyflow-starter/easyflow-starter-all/src/main/resources/application.yml`)。
|
||||
|
||||
首次连接空库时,应用会自动执行 `db/migration` 下的迁移脚本并初始化默认管理员、菜单、角色和模型服务商数据。
|
||||
|
||||
### 3. 启动前端
|
||||
管理后台:
|
||||
|
||||
@@ -59,7 +66,7 @@ pnpm install
|
||||
pnpm dev
|
||||
```
|
||||
|
||||
默认测试账号:`admin / 123456`
|
||||
默认测试账号:`admin / Easy@2026`
|
||||
|
||||
## 后端 Jar 包构建与部署
|
||||
|
||||
@@ -78,6 +85,8 @@ mvn -DskipTests -Dmaven.javadoc.skip=true clean package
|
||||
java -jar easyflow-starter/easyflow-starter-all/target/easyflow-starter-all-0.0.1.jar --spring.profiles.active=prod
|
||||
```
|
||||
|
||||
生产环境同样只需要保证目标数据库已创建为空库,Flyway 会在应用启动时自动完成迁移。
|
||||
|
||||
可通过环境变量覆盖关键配置(示例):
|
||||
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user