Docker - xxl-job分布式任务调度

XXL-JOB 是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。.net core 项目集成参考:XxlJob.Core.AspNetCore

一、拉取镜像

查看最新版本:https://hub.docker.com/r/xuxueli/xxl-job-admin
docker pull xuxueli/xxl-job-admin:2.4.0   # 目前最新版本 2.4.0,指定版本原因是后续的配置文件需要对应版本

二、准备工作

1.xxl-job依赖mysql请自行安装,可参考作者之前的文章:Docker - Mysql部署
2.在源码仓库中找到对应版本,如:https://github.com/xuxueli/xxl-job/releases/tag/2.4.0 下载zip包,解压提取数据库文件:doc/db/tables_xxl_job.sql、配置文件:xxl-job-admin/src/main/resources/application.properties,如果你安装的是2.4.0版本,可以直接点击下载作者已解压好的文件 数据库下载配置文件下载
3.将解压得到的数据文件初始化到mysql数据库,初始化完成后得到如下表结构:

4.调整配置文件中的数据库连接信息邮件设置,其它配置可根据自身情况进行相应调整,然后放到服务器相应磁盘目录下,示例:/data/xxl_job/application.properties

三、执行安装

docker run -d \
--restart=always \
--name xxl-job-admin \
-p 9007:8080 \
# 映射 日志文件到磁盘
-v /data/xxl_job/applogs:/data/applogs \
# 映射 刚刚调整过的配置文件
-v /data/xxl_job/application.properties:/application.properties \
# 使用映射的配置文件启动容器
-e PARAMS="--spring.config.location=/application.properties" \
xuxueli/xxl-job-admin:2.4.0

四、安装完成

访问IP:映射端口/xxl-job-admin/

初始账号密码:admin/123456

五、部署执行器

1. 拉取镜像

docker pull chinayin/xxl-job-executor-springboot:2.4.0

2. 创建 application.properties 配置文件

# web port
server.port=8081
# no web
#spring.main.web-environment=false

# log config
logging.config=classpath:logback.xml
 
### xxl-job admin address list, such as "http://address" or "http://address01,http://address02"
xxl.job.admin.addresses=${ADMIN_ADDRESS}
### xxl-job, access token
xxl.job.accessToken=${ADMIN_TOKEN}
### xxl-job executor appname(<strong>这儿的appname就是页面注册时填的第一个appname</strong>)
xxl.job.executor.appname=${APP_NAME}
### xxl-job executor registry-address: default use address to registry , otherwise use ip:port if address is null
xxl.job.executor.address=
### xxl-job executor server-info
xxl.job.executor.ip=${APP_IP}
xxl.job.executor.port=${APP_PORT}
### xxl-job executor log-path
xxl.job.executor.logpath=/app/jobhandler
### xxl-job executor log-retention-days
xxl.job.executor.logretentiondays=30

3. 提前创建执行器

4. 执行安装

docker run -d \
# 映射端口
-p 9044:9044 \
--name z-tasks-executor \
--restart=unless-stopped \
# 映射配置文件
-v /data/zlw/xxl-job-executor/application.properties:/app/application.properties \
# 对应配置文件中的${}变量
-e APP_NAME=zlw-tasks-executor \
-e APP_IP=10.221.252.81 \
-e APP_PORT=9044 \
-e ADMIN_ADDRESS=http://10.221.252.21:9040/xxl-job-admin \
-e ADMIN_TOKEN=729e94e4275d406d92b6581c93f0dc25277192aa88504b398dc7437017c6a4e8 \
chinayin/xxl-job-executor-springboot:2.4.0
分享到:
本文链接:https://blog.renzicu.com/2023/06/102.html
版权声明:本博客所有文章除特别声明外,均采用 CC BY 4.0 许可协议。转载请注明出处!
THE END
二维码
打赏
文章目录
关闭
目 录