![《[Clock]没错!就是让你点点点完成可视化任务调度!》](https://user-images.githubusercontent.com/12979090/86565300-297abd80-bf9a-11ea-916f-b547f5023ee8.png)
Clock
基于go cron的可视化调度轻量级调度框架,支持DAG任务依赖,支持bash命令,前端及后端编译完成(基于packr2)后仅有一个二进制文件,轻松部署
地址
https://github.com/BruceDone/clock
环境
- 后端
- 前端
- vue
- iview-admin
使用
直接使用
下载git上的release列表,根据系统下载相应的二进制文件,使用命令
1 2 |
./clock -c ./config/dev.yaml |
自己编译前后端
将前端项目 clock-admin 下载到本地,使用命令 npm run build
, 编译生成前端项目文件dist
, 将后端项目 clock 下载到本地, 进入项目根目录,确保安装了packr2 ,使用如下命令
1 2 3 4 5 6 7 8 9 |
rm -rf webapp mkdir -p ./webapp cp -r /你的clock-admin文件夹/dist/* ./webapp packr2 clean packr2 # 根据发布的目标平台,调整如下命令 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go generate CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build |
使用命令./clock -c config/dev.yaml
载入你的配置文件,完成后打开浏览器 http://127.0.0.1:9528
,输入用户名密码就可以进入管理后台
结构
1 2 3 4 5 6 7 8 9 10 11 12 13 |
├── config - 配置文件夹,示例文件所在 ├── controller - 控制层 ├── packrd - packr2生成的静态资源 ├── param - 参数相关 ├── runner - 执行器 ├── server - view层 ├── storage - 存储相关 └── webapp - 由clock-admin发布的前端资源 ├── css ├── fonts ├── img └── js |
特性与功能
- DAG任务关联 , 可以管理任务的前后依赖
- 可视化管理
- 支持多种数据库: sqlite , mysql ,postgresql
- 前后端打包完成后只有一个二进制文件,极其方便部署
- 跨平台
使用截图
登录进入控制台
添加任务容器
点击新增,调度表达式这里支持cron和@every语法,更多语法请参考:cron
点击配置进入子任务配置界面
点击任务编辑下的新增,选中新增的节点,编辑任务bash命令,任务名,是否保存日志,及任务超时时间(小技巧:选中画板空白处为新增,选中节点为编辑状态),可以自由编辑节点(任务)之间的关系,摆好位置之后选择保存