✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

DataX Admin

image

DataX Admin 是一个基于 Go 和 Vue.js 构建的数据同步任务管理平台,提供了友好的界面来配置和管理 DataX 数据同步任务。

功能特性

  • 可视化配置 DataX 任务
  • 实时监控任务执行状态
  • 支持多种数据源管理
  • 任务调度和定时执行
  • 用户权限管理
  • 系统监控和性能分析
  • 支持多架构部署(AMD64/ARM64)

系统要求

  • Go 1.20 或更高版本
  • Node.js 18 或更高版本
  • MySQL 8.0 或更高版本
  • DataX 环境

快速开始

使用 Docker(推荐)

  1. 拉取镜像
docker pull lisongyu/datax-admin:latest
  1. 运行容器
docker run -d 
  --name datax-admin 
  -p 28080:80 
  -v $(pwd)/logs:/app/logs 
  lisongyu/datax-admin:latest

访问 http://localhost:28080/datax 即可使用系统。

从源码构建

  1. 克隆仓库
git clone https://github.com/lisyfun/datax-admin.git
cd datax-admin
  1. 使用 Makefile 构建(推荐)
# 完整构建(前端 + 后端 + Docker)
make docker
  1. 运行容器
docker run -d 
  --name datax-admin 
  -p 28080:80 
  -v $(pwd)/logs:/app/logs 
  datax-admin:$(VERSION)-arm64

使用 Makefile

项目提供了完整的 Makefile 来简化构建过程。

主要命令

  • make build - 构建后端(当前平台)
  • make build-frontend - 构建前端
  • make docker VERSION=v1.0.0 - 构建 Docker 镜像
  • make docker-run VERSION=v1.0.0 - 运行 Docker 容器
  • make clean - 清理构建产物
  • make help - 显示帮助信息

配置说明

系统配置文件位于 backend/config.yaml

server:
  port: ":28080"
  mode: debug

db:
  host: localhost
  port: 3306
  username: root
  password: password
  dbname: datax_admin

jwt:
  secret: your-secret-key
  expire: 86400

datax:
  home: "/app"  # DataX-Admin 可执行文件路径
  bin: "/app/bin/datax"  # DataX 可执行文件路径
  python: "python"  # Python 解释器路径

logger:
  log_path: "logs"  # 日志文件路径
  max_size: 100     # 单个日志文件最大大小(MB)
  max_backups: 7    # 最大保留的旧日志文件数
  max_age: 30       # 日志文件保留的最大天数
  compress: true    # 是否压缩旧日志文件

项目结构

datax-admin/
├── frontend/                # 前端项目目录
│   ├── src/
│   │   ├── api/            # API 接口
│   │   ├── assets/         # 静态资源
│   │   ├── components/     # 公共组件
│   │   ├── layouts/        # 布局组件
│   │   ├── locale/         # 国际化
│   │   ├── router/         # 路由配置
│   │   ├── stores/         # 状态管理
│   │   ├── styles/         # 全局样式
│   │   ├── types/          # TypeScript 类型
│   │   ├── utils/          # 工具函数
│   │   └── views/          # 页面组件
│   ├── package.json
│   └── vite.config.ts
│
└── backend/                 # 后端项目目录
    ├── config/             # 配置文件
    ├── controllers/        # 控制器
    ├── middleware/         # 中间件
    ├── models/             # 数据模型
    ├── routes/             # 路由配置
    ├── services/           # 业务逻辑
    ├── types/              # 类型定义
    ├── utils/              # 工具函数
    ├── go.mod
    └── main.go

开发指南

代码规范

  • 前端遵循 Vue 3 + TypeScript 开发规范
  • 后端遵循 Go 语言规范
  • 使用 ESLint 和 Prettier 进行代码格式化
  • 使用 golangci-lint 进行 Go 代码检查

贡献指南

  1. Fork 本仓库
  2. 创建功能分支
  3. 提交代码
  4. 创建 Pull Request

许可证

MIT License

Featured Templates

View More

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.