前置条件

必须保证Client与Server互通

Linux上已经安装好了Docker

  1. ubuntu 安装docker 直通车
  2. 基本就是这几个命令 依次执行:
sudo apt-get remove docker docker-engine docker.io containerd runc

sudo apt-get update

sudo apt-get install ca-certificates curl gnupg


sudo install -m 0755 -d /etc/apt/keyrings

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

sudo chmod a+r /etc/apt/keyrings/docker.gpg

echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

1.创建数据库脚本

a. 下载 xxl-job 源码 xxl-job 源码直接车

Linux 之 docker 部署 XXL-Job_docker

b. xxl-job\doc\db目录下,执行tables_xxl_job.sql文件,创建库和表

Linux 之 docker 部署 XXL-Job_ubuntu_02


Linux 之 docker 部署 XXL-Job_spring_03

c. 表说明

xxl_job 的数据库里有如下几个表

xxl_job_group:执行器信息表,用于维护任务执行器的信息

xxl_job_info:调度扩展信息表,主要是用于保存xxl-job的调度任务的扩展信息,比如说像任务分组、任务名、机器的地址等等

xxl_job_lock:任务调度锁表

xxl_job_log:日志表,主要是用在保存xxl-job任务调度历史信息,像调度结果、执行结果、调度入参等等

xxl_job_log_report:日志报表,会存储xxl-job任务调度的日志报表,会在调度中心里的报表功能里使用到

xxl_job_logglue:任务的GLUE日志,用于保存GLUE日志的更新历史变化,支持GLUE版本的回溯功能

xxl_job_registry:执行器的注册表,用在维护在线的执行器与调度中心的地址信息

xxl_job_user:系统的用户表,可以用表中默认的用户名与密码进行登录

2. docker 部署服务端, 连接数据库

# 创建挂载盘
mkdir /opt/xxjobData  

# 创建容器
docker run -e PARAMS="--spring.datasource.url=jdbc:mysql://ip:port/dbname?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai --spring.datasource.username=root --spring.datasource.password=password" -p 8090:8080 -v /opt/xxjobData:/data/applogs --name xxl-job-admin -d xuxueli/xxl-job-admin:2.4.0
ip, port  root  password dbname 换成mysql的配置信息

--xxl.job.accessToken:令牌

默认登录账号 admin / 123456

访问地址 http://127.0.0.1:8090/xxl-job-admin

D. 可视化界面

Linux 之 docker 部署 XXL-Job_spring_04