XXL JOB DockerCompose部署

官网给的方式是 Docker 命令启动,但是用起来太麻烦了,所以用DockerCompose 简化部署

创建数据库,导入 SQL

SQL 脚本位置为/xxl-job/doc/db/tables_xxl_job.sql

raw.githubusercontent.com/xuxueli/xxl...

编写 DockerCompose

yaml 复制代码
version: '3.7'
services:
  xxl-job:
    image: registry.cn-shanghai.aliyuncs.com/frbbs/xxl-job-admin:2.4.1
    container_name: xxl-job-admin
    restart: always
    ports:
      - "8080:8080"
    volumes:
      - ./application.yml:/config/application.yml:ro
      - /data/logs/xxl-job:/data/applogs

为了方便配置的修改,将配置独立成application.yml 了

编写 application.yml 配置

yaml 复制代码
spring:
  datasource:
    url: jdbc:mysql://xxxx:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai
    username: xxl_job
    password: xxx
    driver-class-name: com.mysql.jdbc.Driver
xxl:
  job:
    accessToken: xxxx

调度中心配置内容说明:

properties 复制代码
### 调度中心JDBC链接:链接地址请保持和 2.1章节 所创建的调度数据库的地址一致
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=root_pwd
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
### 报警邮箱
spring.mail.host=smtp.qq.com
spring.mail.port=25
[email protected]
spring.mail.password=xxx
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
spring.mail.properties.mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory
### 调度中心通讯TOKEN [选填]:非空时启用;
xxl.job.accessToken=
### 调度中心国际化配置 [必填]: 默认为 "zh_CN"/中文简体, 可选范围为 "zh_CN"/中文简体, "zh_TC"/中文繁体 and "en"/英文;
xxl.job.i18n=zh_CN
## 调度线程池最大线程配置【必填】
xxl.job.triggerpool.fast.max=200
xxl.job.triggerpool.slow.max=100
### 调度中心日志表数据保存天数 [必填]:过期日志自动清理;限制大于等于7时生效,否则, 如-1,关闭自动清理功能;
xxl.job.logretentiondays=30

启动

bash 复制代码
docker-compose up -d && docker-compose logs -f

xxl-job-admin  | 
xxl-job-admin  |   .   ____          _            __ _ _
xxl-job-admin  |  /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
xxl-job-admin  | ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
xxl-job-admin  |  \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
xxl-job-admin  |   '  |____| .__|_| |_|_| |_\__, | / / / /
xxl-job-admin  |  =========|_|==============|___/=/_/_/_/
xxl-job-admin  |  :: Spring Boot ::               (v2.7.18)
xxl-job-admin  |
xxl-job-admin  | 16:59:05.886 logback [main] INFO  c.x.job.admin.XxlJobAdminApplication - Starting XxlJobAdminApplication using Java 1.8.0_332 on 1a5e48b76b08 with PID 7 (/app.jar started by root in /)
xxl-job-admin  | 16:59:05.888 logback [main] INFO  c.x.job.admin.XxlJobAdminApplication - No active profile set, falling back to 1 default profile: "default"
xxl-job-admin  | 16:59:06.716 logback [main] INFO  o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http)
xxl-job-admin  | 16:59:06.720 logback [main] INFO  o.a.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8080"]
xxl-job-admin  | 16:59:06.722 logback [main] INFO  o.a.catalina.core.StandardService - Starting service [Tomcat]
xxl-job-admin  | 16:59:06.722 logback [main] INFO  o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.83]
xxl-job-admin  | 16:59:06.802 logback [main] INFO  o.a.c.c.C.[.[.[/xxl-job-admin] - Initializing Spring embedded WebApplicationContext
xxl-job-admin  | 16:59:06.802 logback [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 749 ms
xxl-job-admin  | Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
xxl-job-admin  | 16:59:07.157 logback [main] INFO  c.x.j.a.c.scheduler.XxlJobScheduler - >>>>>>>>> init xxl-job admin success.
xxl-job-admin  | 16:59:07.168 logback [xxl-job, admin JobFailMonitorHelper] INFO  com.zaxxer.hikari.HikariDataSource - HikariCP - Starting...
xxl-job-admin  | 16:59:07.170 logback [xxl-job, admin JobFailMonitorHelper] WARN  c.z.hikari.util.DriverDataSource - Registered driver with driverClassName=com.mysql.jdbc.Driver was not found, trying direct instantiation.       
xxl-job-admin  | 16:59:07.288 logback [main] INFO  o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page template: index
xxl-job-admin  | 16:59:07.581 logback [main] INFO  o.s.b.a.e.web.EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
xxl-job-admin  | 16:59:07.594 logback [main] INFO  o.a.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8080"]
xxl-job-admin  | 16:59:07.605 logback [main] INFO  o.a.c.c.C.[.[.[/xxl-job-admin] - Initializing Spring DispatcherServlet 'dispatcherServlet'
xxl-job-admin  | 16:59:07.606 logback [main] INFO  o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet'
xxl-job-admin  | 16:59:07.607 logback [main] INFO  o.s.web.servlet.DispatcherServlet - Completed initialization in 1 ms
xxl-job-admin  | 16:59:07.607 logback [main] INFO  o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '/xxl-job-admin'
xxl-job-admin  | 16:59:07.615 logback [main] INFO  c.x.job.admin.XxlJobAdminApplication - Started XxlJobAdminApplication in 1.973 seconds (JVM running for 2.393)
xxl-job-admin  | 16:59:07.692 logback [xxl-job, admin JobFailMonitorHelper] INFO  com.zaxxer.hikari.HikariDataSource - HikariCP - Start completed.
xxl-job-admin  | 16:59:12.000 logback [xxl-job, admin JobScheduleHelper#scheduleThread] INFO  c.x.j.a.c.thread.JobScheduleHelper - >>>>>>>>> init xxl-job admin scheduler success.
xxl-job-admin  | 16:59:41.367 logback [http-nio-8080-exec-1] INFO  o.a.tomcat.util.http.parser.Cookie - A cookie header was received [Hm_lvt_c081e53834443c7768dc0a2f554ab0b9=1728542906,1729482490,1730871693,1731034126;] that contained an invalid cookie. That cookie will be ignored.

如果没有报错的话,就是部署完成了;如果要升级,只需要修改 DockerCompose 配置的版本号即可

访问:http://localhost:8080/xxl-job-admin/

本文由博客一文多发平台 OpenWrite 发布!

相关推荐
小马爱打代码11 分钟前
SpringBoot原生实现分布式MapReduce计算
spring boot·分布式·mapreduce
iuyou️14 分钟前
Spring Boot知识点详解
java·spring boot·后端
一弓虽26 分钟前
SpringBoot 学习
java·spring boot·后端·学习
来自星星的猫教授2 小时前
spring,spring boot, spring cloud三者区别
spring boot·spring·spring cloud
乌夷3 小时前
使用spring boot vue 上传mp4转码为dash并播放
vue.js·spring boot·dash
A阳俊yi5 小时前
Spring Boot日志配置
java·spring boot·后端
苹果酱05675 小时前
2020-06-23 暑期学习日更计划(机器学习入门之路(资源汇总)+概率论)
java·vue.js·spring boot·mysql·课程设计
斜月5 小时前
一个服务预约系统该如何设计?
spring boot·后端
Java水解6 小时前
线程池详解:在SpringBoot中的最佳实践
spring boot·后端
阿里小阿希7 小时前
解决 Spring Boot + MyBatis 项目迁移到 PostgreSQL 后的数据类型不匹配问题
spring boot·postgresql·mybatis