{"id":13511692,"url":"https://github.com/iwannay/jiacrontab","last_synced_at":"2025-04-13T06:15:32.380Z","repository":{"id":40261021,"uuid":"93239475","full_name":"iwannay/jiacrontab","owner":"iwannay","description":"简单可信赖的任务管理工具","archived":false,"fork":false,"pushed_at":"2025-02-07T06:27:49.000Z","size":54521,"stargazers_count":1348,"open_issues_count":32,"forks_count":264,"subscribers_count":58,"default_branch":"master","last_synced_at":"2025-04-13T06:15:30.056Z","etag":null,"topics":["crontab","daemon","go","golang","jiacrontab","job","job-scheduler","scheduler"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iwannay.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-06-03T09:53:27.000Z","updated_at":"2025-03-13T10:05:18.000Z","dependencies_parsed_at":"2024-01-14T04:54:18.561Z","dependency_job_id":"9b5c76c0-3404-4abd-abd4-b7fff885b3d2","html_url":"https://github.com/iwannay/jiacrontab","commit_stats":{"total_commits":526,"total_committers":15,"mean_commits":35.06666666666667,"dds":"0.26615969581749055","last_synced_commit":"0bc860d47b050fac2239f1643dd2c4f210c82c19"},"previous_names":["iwannay/jiacrontab.iwannay.cn"],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iwannay%2Fjiacrontab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iwannay%2Fjiacrontab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iwannay%2Fjiacrontab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iwannay%2Fjiacrontab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iwannay","download_url":"https://codeload.github.com/iwannay/jiacrontab/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248670434,"owners_count":21142904,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["crontab","daemon","go","golang","jiacrontab","job","job-scheduler","scheduler"],"created_at":"2024-08-01T03:01:06.553Z","updated_at":"2025-04-13T06:15:32.347Z","avatar_url":"https://github.com/iwannay.png","language":"Go","funding_links":[],"categories":["Go","Go (531)","Repositories"],"sub_categories":[],"readme":"## jiacrontab\n\n[![Build Status](https://travis-ci.org/iwannay/jiacrontab.svg?branch=dev)](https://travis-ci.org/iwannay/jiacrontab) \n\n简单可信赖的任务管理工具\n\n**如果你需要一次性推送作业到数以万计的实例上运行，请关注作者开源的另一款调度软件 [Jiascheduler](https://github.com/jiawesoft/jiascheduler)，jiascheduler更强大，更灵活，并具备jiacrontab的全部功能**\n\n### v2.0.0版发布\n\n\n### [❤jiacrontab 最新版下载点这里❤ ](https://download.iwannay.cn/jiacrontab/)\n\n    1.自定义job执行  \n    2.允许设置job的最大并发数  \n    3.每个脚本都可在web界面下灵活配置，如测试脚本运行，查看日志，强杀进程，停止定时...  \n    4.允许添加脚本依赖（支持跨服务器），依赖脚本提供同步和异步的执行模式  \n    5.支持异常通知  \n    6.支持守护脚本进程  \n    7.支持节点分组\n\n\n### 架构\n\n\u003cimg src=\"https://raw.githubusercontent.com/iwannay/static_dir/master/jiacrontab_arch.png\" width=\"50%\"/\u003e\n\n### 说明\n\njiacrontab 由 jiacrontab_admin，jiacrontabd 两部分构成，两者完全独立通过 rpc 通信  \njiacrontab_admin：管理后台向用户提供web操作界面  \njiacrontabd：负责job数据存储，任务调度  \n\n\n### 安装\n\n#### 二进制安装\n\n1.[下载](https://download.iwannay.cn/jiacrontab/) 二进制文件。\n\n2.解压缩进入目录(jiarontab_admin,jiacrontabd)。\n\n3.运行\n\n```sh\n$ nohup ./jiacrontab_admin \u0026\u003e jiacrontab_admin.log \u0026\n$ nohup ./jiacrontabd \u0026\u003e jiacrontabd.log \u0026\n\n## 建议使用systemd守护\n```\n\n#### v2.x.x源码安装\n\n1.安装 git，golang(version 1.12.x)；可参考官网。\n2.安装运行\n\n```sh\n$ git clone git@github.com:iwannay/jiacrontab.git\n$ cd jiacrontab\n# 配置代理\n$ go env -w GONOPROXY=\\*\\*.baidu.com\\*\\*              ## 配置GONOPROXY环境变量,所有百度内代码,不走代理\n$ go env -w GONOSUMDB=\\*                              ## 配置GONOSUMDB,暂不支持sumdb索引\n$ go env -w GOPROXY=https://goproxy.baidu.com         ## 配置GOPROXY,可以下载墙外代码\n\n# 编译\n# 注意需要先编译前端(https://github.com/jiacrontab/jiacrontab-frontend)\n# 再安装go-bindata\n# 然后assets指定前端资源编译后的位置\n$ GO111MODULE=on go get -u github.com/go-bindata/go-bindata/v3/go-bindata\n$ make build assets=$HOME/project/jiacrontab-frontend/build\n\n$ cd build/jiacrontab/jiacrontab_admin/\n$ nohup ./jiacrontab_admin \u0026\u003e jiacrontab_admin.log \u0026\n\n$ cd build/jiacrontab/jiacrontabd/\n$ nohup ./jiacrontabd \u0026\u003e jiacrontabd.log \u0026\n```\n\n\u003cfont color=\"red\" size=\"3\"\u003e浏览器访问 host:port (eg: localhost:20000) 即可访问管理后台\u003c/font\u003e\n\n#### docker 安装\n```sh\n# 下载镜像\n$ docker pull iwannay/jiacrontab:2.3.0\n\n# 创建自定义网络\n$ docker network create mybridge\n\n# 启动jiacrontab_admin\n# 需要指定配置文件目录时需要先挂载目录，然后-config指定\n$  docker run --network mybridge --name jiacrontab_admin -p 20000:20000 -it iwannay/jiacrontab:2.3.0 ./jiacrontab_admin\n\n# 启动jiacrontabd\n# 需要指定配置文件目录时需要先挂载目录，然后-config指定\n$ docker run -v $(pwd)/jiacrontabd:/config --name jiacrontabd --network mybridge -it iwannay/jiacrontab:2.3.0 ./jiacrontabd -config /config/jiacrontabd.ini\n\n```\n\n### 升级版本\n\n1、下载新版本压缩包，并解压。\n\n2、替换旧版jiacrontab_admin,jiacrontabd为新版执行文件\n\n3、运行\n\n### 基本使用\n\n#### 定时任务\n\n##### 超时设置和超时操作\n\n超时后会进行设置的超时操作 默认值为 0 不判断超时\n\n##### 最大并发数\n\n最大并发数控制同一job同一个时刻最多允许存在的进程数，默认最大并发数为1，当前一次未执行结束时则放弃后续执行。    \n防止脚本无法正常退出而导致系统资源耗尽\n\n##### 添加依赖\n\n依赖就是用户脚本执行前，需要先执行依赖脚本，只有依赖脚本执行完毕才会执行当前脚本。  \n1. **并发执行**  \n并发执行依赖脚本，任意一个脚本出错或超时不会影响其他依赖脚本，但是会中断用户job\n2. **同步执行**  \n同步执行依赖脚本，执行顺序为添加顺序，如果有一个依赖脚本出错或超时，则会中断后继依赖，以及用户job\n\n##### 脚本异常退出通知\n\n如果脚本退出码不为0，则认为是异常退出\n\n#### 常驻任务\n\n常驻任务检查脚本进程是否退出，如果退出再次重启，保证脚本不停运行。  \n注意：不支持后台进程。\n\n## 附录\n\n### 错误日志\n\n错误日志存放在配置文件设置的目录下  \n定时任务为 logs/crontab_task  \n定时任务为 logs/daemon_task\n日志文件准确为日期目录下的 ID.log （eg: logs/crontab_task/2018/01/01/1.log）\n\n#### 错误日志信息\n\n1. 正常错误日志  \n程序原因产生的错误日志\n2. 自定义错误日志  \n程序中自定义输出的信息，需要在输出信息后面加入换行\n\n### 截图\n\u003cimg src=\"https://raw.githubusercontent.com/iwannay/static_dir/master/jiacrontab_preview_2.0.0_1.png\" width=\"50%\"/\u003e\u003cimg src=\"https://raw.githubusercontent.com/iwannay/static_dir/master/jiacrontab_preview_2.0.0_2.png\" width=\"50%\" /\u003e\n\n### 演示地址\n\n[2.0.0版本演示地址](http://jiacrontab-spa.iwannay.cn/) 账号：test 密码：123456\n\n\n\n### 赞助\n本项目花费了作者大量时间，如果你觉的该项目对你有用，或者你希望该项目有更好的发展，欢迎赞助。\n\u003cimg src=\"https://raw.githubusercontent.com/iwannay/jiacrontab/master/admire.jpg\" width=\"250\" alt=\"赞助\"/\u003e\u003cimg src=\"https://raw.githubusercontent.com/iwannay/jiacrontab/master/qq.png\" width=\"250\" alt=\"qq群\"/\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiwannay%2Fjiacrontab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiwannay%2Fjiacrontab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiwannay%2Fjiacrontab/lists"}