PPGo_Job 是一款定时任务可视化的、多人多权限的管理系统,采用 golang 开发,安装方便,资源消耗少,支持大并发,可同时管理多台服务器上的定时任务。
V1.x 版本是一个简单的定时任务管理系统,进入 V1.0 :https://github.com/george518/PPGo_Job/releases/tag/v1.2.1 相对于 V1.x 版本,V2.0 新增以下功能和特性:
- 1、全新 UI,基于 LayUI2.3 构建全新页面,后端模板手工搭建,让操作更加人性化。后台模板地址:https://github.com/george518/PP_admin-template
- 2、新增权限管理功能,根据菜单权限、操作权限和数据权限进行划分,方便多用户多权限管理定时任务。
- 3、新增服务器复制功能,让服务器资源添加更加方便。
- 4、新增定时任务详情页面,将任务相关操作更加集中起来操作。
- 5、新增任务审核功能,提高任务的管控能力。
- 6、新增禁止命令管理功能,配合任务审核功能,提高任务运行安全性,总有人会犯错。
- 7、优化日志详情页面,查看日志更方便,你想看到的现场内容都在,亲。
- 8、支持 docker 化部署,这年头,系统不支持 docker 化部署好像不能出门似的。
- 9、支持 windows 系统运行定时系统,不歧视 windows,也要支持。
- 10、提醒信息新增钉钉和微信通知功能,并支持编辑通知模版功能。让提醒内容个性化,不再死板。
- 11、新增创建、启动、关闭任务的 API,通过接口的方式控制定时任务。
安装方法
方法一、 编译安装
- go get github.com/george518/PPGo_Job
- 创建 mysql 数据库,并将 ppgo_job2.sql 导入
- 修改 config 配置数据库
- 运行 go build
- 运行 ./run.sh start|stop
mac
- 运行 ./package.sh -a amd64 -p darwin -v v2.x.0
linux
- 运行 ./package.sh -a 386 -p linux -v v2.x.0
- 运行 ./package.sh -a amd64 -p linux -v v2.x.0
windows
- 运行 ./package.sh -a amd64 -p windows -v v2.x.0
方法二、直接使用
linux
- 进入 https://github.com/george518/PPGo_Job/releases
- 下载 ppgo_job-linux-2.x.0.zip 并解压
- 进入文件夹,设置好数据库(创建数据库,导入ppgo_job2.sql)和配置文件(conf/app.conf)
- 运行 ./run.sh start|stop
mac
- 进入https://github.com/george518/PPGo_Job/releases
- 下载 ppgo_job-mac-2.x.0.zip 并解压
- 进入文件夹,设置好数据库(创建数据库,导入ppgo_job2.sql)和配置文件(conf/app.conf)
- 运行 ./run.sh start|stop
windows
- 进入 https://github.com/george518/PPGo_Job/releases
- 下载 ppgo_job-windows-2.x.0.zip 并解压
- 进入文件夹,设置好数据库(创建数据库,导入ppgo_job2.sql)和配置文件(conf/app.conf)
- 运行 run.bat
前台访问:http://your_host:8080 用户名:admin 密码:123456
配置文件
根据自己的情况修改数据库和启动端口
appname = PPGo_Job2 httpport = 8080 runmode = dev version= V2.2 # 允许同时运行的任务数 jobs.pool = 1000 # 站点名称 site.name = 定时任务管理器 #通知方式 0=邮件,1=信息,2=钉钉,3=微信 notify.type = 0 # 数据库配置 db.host = 127.0.0.1 db.user = root db.password = "123456" db.port = 3306 db.name = ppgo_job2 db.prefix = pp_ db.timezone = Asia/Shanghai # 邮件通知配置 email.host = smtp.mxhichina.com email.port = 25 email.from = ci@xxx.cn email.user = ci@xxx.cn email.password = "xxxxxx" email.pool = 10 # 短信通知方式配置 msg.url = http://chanxiyou.com/api/tools/send_sms msg.pool = 10 # 钉钉通知配置 dingtalk.url = "https://oapi.dingtalk.com/robot/send?access_token=%s" dingtalk.pool = 10 # 微信通知方式配置 wechat.url = http://xx.com/api/tools/send_wechat wechat.pool = 10