1 Star 0 Fork 29

柚子 / notebook

forked from JustryDeng / notebook 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
[02]部署调度中心.md 7.98 KB
一键复制 编辑 原始数据 按行查看 历史
JustryDeng 提交于 2023-07-12 16:35 . 部署调度中心

部署调度中心

直接部署

你也可以直接使用docker部署镜像xuxueli/xxl-job-admin,镜像版本见here

docker部署xxl-job-admin,可参考:

第一步:下载release版本的源码

第二步:打开并编译项目

解压项目,并使用IDE打开项目

1656405863906

1656406205751

第三步:修改xxx-job-admin下的配置文件

1656406260079

配置说明:

### 调度中心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
spring.mail.username=xxx@qq.com
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

配置邮箱示例:

  • qq邮箱示例

    ## xxl-job, email
    spring.mail.host=smtp.qq.com
    # 465端口也行
    spring.mail.port=25
    # xxl-job对邮件这块封装得有点问题, 照理说spring.mail.username或spring.mail.from有个应该能写发件人姓名才对
    spring.mail.username=1612513157@qq.com
    spring.mail.from=1612513157@qq.com
    # 授权码
    spring.mail.password=cwcfaarmqrcabhfa
    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
  • 163邮箱示例

    ## xxl-job, email
    spring.mail.host=smtp.163.com
    spring.mail.port=25
    # xxl-job对邮件这块封装得有点问题, 照理说spring.mail.username或spring.mail.from有个应该能写发件人姓名才对
    spring.mail.username=13548417409@163.com
    spring.mail.from=13548417409@163.com
    # 授权码
    spring.mail.password=PEAKZUNUAIZVGMKF
    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

第四步:打包项目

1656407103096

第五步:确保相关表已经初始化

如果xxl-job用到的相关表还没有初始化,可以去这里拿sql,然后去第三步配置的数据库里面进行初始化执行

1656409341346

注:该sql中含有创建xxl_job和切换至xxl_job库的操作

CREATE database if NOT EXISTS `xxl_job` default character set utf8mb4 collate utf8mb4_unicode_ci;
use `xxl_job`;

如果你用的数据库不叫xxl_job,记得删除这两句sql

这是初始化完后的数据库:

1656409513696

第六步:启动调度中心

java -jar xxl-job-admin-2.3.1.jar启动第四步打的包即可

第七步:访问测试

以初始账号密码admin/123456访问http://localhost:8080/xxl-job-admin进入管理界面

注:本人第三步修改了端口,所以下图中是8848

1656409849072

第八步(可选):修改admin密码

xxl-job-admin不允许修改自己的密码,所以我们可以这样做

  1. 先用admin/123456登录
  2. 再创建一个临时管理员用户(temp)
  3. 再用temp登录,然后修改admin的密码
  4. 再用admin完成登录,并删除临时用户

docker部署

部署

提示:可通过对环境变量PARAMS的设置,达到和上面修改配置文件(直接部署的第三步)一样的效果

# 注:因为是直接执行shell,所以如果有shell特殊字符(如xxl.job.accessToken值里面的$)那么可以通过"\"进行防转义处理
docker run -d \
  --name xxl-job-admin \
  --restart=always \
  -p 8858:8080 \
  -e PARAMS=" \
    --spring.datasource.url=jdbc:mysql://172.31.113.186:3307/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai \
    --spring.datasource.username=root \
    --spring.datasource.password=123456 \
    --xxl.job.accessToken=your-access-token \
    --spring.mail.host=smtp.qq.com \
    --spring.mail.port=465 \
    --spring.mail.username=1612513157@qq.com \
    --spring.mail.from=1612513157@qq.com \
    --spring.mail.password=cwcfaarmqrcabhfa \
    " \
  xuxueli/xxl-job-admin:2.3.1

查看日志

docker logs -f --tail=50 xxl-job-admin

docker-compose部署

编写docker-compose

vim docker-compose.yml

填写内容

version: '3' #指定compose文件的版本号,目前有1,2,3这三个版本

services:
  xxl-job-admin:
    image: xuxueli/xxl-job-admin:2.3.1
    container_name: xxl-job-admin
    restart: always
    environment:
      # 可通过对环境变量PARAMS的设置,达到和上面修改配置文件(直接部署的第三步)一样的效果
      # 注:值中不能含有特殊字符$,否则会被docker-compose解析(shell解析)成对应的变量值
      - "PARAMS=\
          --spring.datasource.url=jdbc:mysql://172.31.113.186:3307/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai \
          --spring.datasource.username=root \
          --spring.datasource.password=123456 \
          --xxl.job.accessToken=your-access-token \ 
          --spring.mail.host=smtp.qq.com \
          --spring.mail.port=465 \
          --spring.mail.username=1612513157@qq.com \
          --spring.mail.from=1612513157@qq.com \
          --spring.mail.password=cwcfaarmqrcabhfa"
    volumes:
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "8858:8080" # 宿主机端口:容器应用端口

检查一下docker-compose的生效内容

docker-compose config

部署

docker-compose up -d xxl-job-admin

查看日志

docker-compose logs -f --tail=50 xxl-job-admin
1
https://gitee.com/WY784755850/notebook.git
git@gitee.com:WY784755850/notebook.git
WY784755850
notebook
notebook
master

搜索帮助