# data-in-platform
**Repository Path**: peiwisdom/data-in-platform
## Basic Information
- **Project Name**: data-in-platform
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: 1.0
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 6
- **Created**: 2026-02-07
- **Last Updated**: 2026-02-12
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
基于kettle的可视化数据集成平台
English | 简体中文
🚀 快速开始 - 三步部署到云端
--------------------------------------------------------------------------------
# 架构

--------------------------------------------------------------------------------
# 模块
* dataintegration-common : 公共模块
* dataintegration-group : 分组管理
* dataintegration-gateway : 服务网关
* dataintegration-project : 脚本管理
* dataintegration-run : 数据集成运行模块
* dataintegration-sso : sso单点登录模块
* dataintegration-sys : 系统管理模块
* dataintegration-model : 模型管理
* dataintegration-file-management : 文件管理
* dataintegration-ui : 前端vue模块
--------------------------------------------------------------------------------
# 功能特点
基于kettle实现的web版数据集成平台,致力于提供web可拖拽的数据集成平台。
其主要特点有:
* vue2+springCloud架构(后续支持vue3)
* 支持kettle本地引擎,后续扩展spark引擎
* 支持ftp/s3协议的文件读取
由于公司采用springcloud微服务架构开发整个数据中台产品,数据集成属于其中的一个子模块,所以暂时还是采用springcloud的架构进行开源,便于版本统一。
--------------------------------------------------------------------------------
# 用户界面截图




--------------------------------------------------------------------------------
# 近期研发计划
新版也在同步研发中,后续会开放
--------------------------------------------------------------------------------
# 参与贡献
非常欢迎大家来参与贡献,贡献流程请参考:
TODO
--------------------------------------------------------------------------------
# 快速试用 Docker
可以参考:http://www.young-datafan.com/docs-data-integration/quick-start/installation-docker/. 这个文档部署演示
# CloudBase 部署
## 📚 部署文档
| 文档 | 描述 | 适用场景 |
|------|------|---------|
| **[Kettle 依赖修复和部署](./KETTLE_FIX_AND_DEPLOY.md)** 🔧 | **新增**: 一键修复 Kettle 依赖,编译项目,准备部署 | **编译问题必读** |
| **[当前状态和后续步骤](./CURRENT_STATUS.md)** 🎯 | **必读**: 当前阻塞点和下一步操作 | **从这里开始** |
| **[云托管开通指南](./CLOUDBASE_CLOUDRUN_SETUP.md)** ⚠️ | 开通云托管服务的详细步骤 | 解决阻塞问题 |
| [部署计划](./DEPLOYMENT_PLAN.md) | MySQL/Redis 创建和部署流程说明 | 了解部署步骤 |
| [部署就绪指南](./CLOUDBASE_DEPLOY_READY.md) | 部署准备完成,连接 CloudBase 后即可部署 | 环境准备参考 |
| [部署状态](./DEPLOYMENT_STATUS.md) | 编译状态和部署策略分析 | 了解项目现状 |
| **[完整部署指南](./CLOUDBASE_COMPLETE_DEPLOYMENT_GUIDE.md)** ⭐ | 从零到一的完整部署流程,包含所有技术细节 | 生产环境部署 |
| [快速部署指南](./CLOUDBASE_QUICK_DEPLOY.md) | 精简的部署步骤和常见问题 | 快速上手 |
| [原有部署文档](./CLOUDBASE_DEPLOYMENT_GUIDE.md) | 早期版本的部署说明 | 参考 |
## 🚀 自动化部署脚本
### CloudBase 云部署
**Windows 用户**:
```bash
# 方式1: 批处理脚本
deploy-to-cloudbase.bat
# 方式2: PowerShell 脚本(推荐,功能更强)
.\deploy-to-cloudbase.ps1
```
脚本会自动完成:
- ✅ 环境检查(Java, Maven, Node.js)
- ✅ 项目编译
- ✅ 部署目录准备
- ✅ Dockerfile 生成
- ✅ 前端构建(可选)
- ✅ 部署配置生成
### 🎯 完整自动化部署系统
**新增**: 企业级自动化部署解决方案
```bash
# 快速部署(推荐)
auto-deploy.bat -SkipTests
# 完整部署(含测试)
.\auto-deploy.ps1
# 生产环境部署
.\auto-deploy.ps1 -Environment production -Server prod.example.com
# 紧急回滚
auto-deploy.bat -Rollback
```
**核心功能**:
- ✅ 自动代码变更检测
- ✅ 智能增量构建
- ✅ 自动化测试套件
- ✅ 环境配置管理
- ✅ 备份和一键回滚
- ✅ 完整的错误处理
- ✅ 详细的日志记录
**📚 详细文档**:
- **[自动化部署完整指南](./DEPLOYMENT_AUTOMATION.md)** ⭐ - 详细使用说明
- **[快速参考手册](./DEPLOYMENT_QUICKREF.md)** - 常用命令速查
- **[配置文件说明](./deploy-config.json)** - 环境配置示例
## 🔧 快速修复 Kettle 依赖问题
**新增一键修复脚本** (2026-02-12):
### 方式 1: 自动修复和编译 (推荐)
```bash
fix-and-build.bat
```
该脚本会自动:
1. ✅ 安装 Kettle 依赖到本地 Maven 仓库
2. ✅ 清理旧的构建文件
3. ✅ 编译和打包项目
**预计耗时**: 5-10 分钟
### 方式 2: 手动执行
```bash
# 步骤 1: 安装 Kettle 依赖
install-kettle-to-repo.bat
# 步骤 2: 编译项目
mvn clean package -DskipTests -Dcheckstyle.skip=true
```
### 📚 完整文档
详细的修复和部署指南: **[KETTLE_FIX_AND_DEPLOY.md](./KETTLE_FIX_AND_DEPLOY.md)**
---
## ⚠️ 编译问题修复状态
**已修复的问题**:
- ✅ Spring Cloud OAuth2 依赖版本缺失 (2026-02-11)
- ✅ Apache Commons Lang 2.x 依赖缺失 (2026-02-11)
- ✅ 父 POM 依赖管理配置 (2026-02-11)
- ✅ Kettle 依赖配置和安装脚本 (2026-02-12)
**验证编译**:
```bash
mvn clean package -DskipTests -Dcheckstyle.skip=true -U
```
预期看到 `BUILD SUCCESS` 并生成所有 JAR 文件。
--------------------------------------------------------------------------------
# 如何构建
## 打包项目
```bash
mvn -B clean compile install -Prelease -Dmaven.test.skip=true -Dcheckstyle.skip=true
```
## 启动前置环境
* Jdk1.8
* Mysql 5.7.+
* consul
* Redis
### 创建数据库
> 使用数据库连接工具连接数据库,创建数据库dataintegration,将项目/install/sql/dataintegration.sql导入数据库中,初始化数据库文件。
### 服务启动
#### 修改配置
* dataintegration-gateway : 服务网关
* dataintegration-group : 分组管理
* dataintegration-project : 脚本管理
* dataintegration-run : 数据集成运行模块
* dataintegration-sso : sso单点登录模块
* dataintegration-sys : 系统管理模块
* dataintegration-model : 模型管理
* dataintegration-file-management : 文件管理
``` bash
依次修改 application-local.yaml
spring.cloud.consul.host: 192.168.10.160 ,ip改为启动的consul IP
spring.cloud.consul.port: 8500 ,ip改为启动的consul 端口
spring.datasource.url: jdbc:mysql://192.168.10.211:13306/ 修改启动的mysql url
spring.datasource.username: 修改启动的mysql的账号
spring.datasource.password: 修改启动的mysql的密码
使用idea或者其他工具运行服务 dataintegration-**-provider
```
#### 启动前端ui
> 终端进入 dataintegration-ui 目录
``` bash
# install dependencies
npm install
# serve with hot reload at localhost:8080
npm run dev
```
> 访问前端页面:http://127.0.0.1:8081/dataintegration-ui/#/ 默认的用户是admin,默认的密码是Prime@2020
###
--------------------------------------------------------------------------------
# 获得帮助
1. 提交[issue](https://github.com/young-datafan/data-integration/issues)
--------------------------------------------------------------------------------
## 版权
请参考 [LICENSE](https://github.com/young-datafan/data-integration/blob/develop/LICENSE) 文件.
--------------------------------------------------------------------------------