centos7 在docker中安装gocron

源代码:https://github.com/ouqiang/gocron

一、搜索镜像

docker search gocron

二、拉镜像

docker pull ouqg/gocron

查看docker tag https://hub.docker.com/r/ouqg/gocron/tags?page=1&ordering=last_updated

三、运行镜像

docker run -e TZ="Asia/Shanghai" --restart=always --name gocron -p 5920:5920 -d ouqg/gocron

四、初始化配置、数据库等

默认访问地址:http://127.0.0.1:5920,如果是第一次配置,先创建好数据库,填好数据库配置和管理员账号可直接初始化(表+数据)

五、已有数据库,想继续用老数据

有两种方式 1、直接修改配置文件 2、备份数据库,直接初始化数据库后还原数据。以下是第一种方式
5.1 暂时没有找到docker传参,只能进容器里修改配置文件(下面gocron改成自己的容器名),源镜像源是从alpine生成

docker exec -it gocron sh

默认情况容器里的app/conf下是空的,需要下图2个文件来初始化配置是数据,也是下面要做的

install.lock是一个空文件,直接创建

cd conf && touch install.lock

vi app.ini修改以下数据库信息,复制保存即可,注意auth_secret一定要记得用以前的,错误的话无法手动初始化(做好auth_secret备份)

[default]
db.engine         = mysql
db.host           = 127.0.0.1
db.port           = 3306
db.user           = root
db.password       = password
db.database       = gocron
db.prefix         = 
db.charset        = utf8
db.max.idle.conns = 5
db.max.open.conns = 100
allow_ips         = 
app.name          = 定时任务管理系统
api.key           = 
api.secret        = 
enable_tls        = false
concurrency.queue = 500
auth_secret       = b413cb90e7e1cf8159ef3fec49333faa2b82499052c81ec826c0f8657ac07427
ca_file           = 
cert_file         = 
key_file          = 

修改完成后exit退出容器,docker restart gocron重启容器
再重新打开地址:http://127.0.0.1:5920 就不会默认再跳转初始化数据库页面了,用原数据库账户登录即可

五、gocron的使用

如果只是简单的使用job发一个http已经可以用了,gocron还可以配置节点,暂时没弄
案例0 0 12 * * ? 每天12点触发

也可以查看执行日志

六、重置密码

如果忘记密码可用以下sql重置,密码是123456,登录后重新修改

UPDATE gocron.`user` SET password='48a23c508cf968b63c1a58ebac679799',salt='Npqq3a' WHERE name ='admin'

七、定时清理JOB日志

删除3个月以前的JOB日志

DELETE FROM gocron.`task_log` WHERE start_time <=date_add(now(), interval -3 month)
posted @ 2020-09-16 00:02  nickchou  阅读(1562)  评论(0编辑  收藏  举报