• 服务部署:使用docker部署开源Xxl-Job任务调度平台项目


    一、项目构建

            1、从gitee上下载源码:xxl-job: 一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。icon-default.png?t=N7T8https://gitee.com/xuxueli0323/xxl-job        2、本地使用ieda修改配置并构建启动运行

            3、将项目文件压缩上传虚拟机上

            4、在虚拟机上解压到某一路径

            5、使用docker部署

    二、部署

    步骤一:编写 Dockerfile

    1. 为 xxl-job-admin 编写 Dockerfile

      在 xxl-job/xxl-job-admin 目录下创建一个名为 Dockerfile 的文件,并添加以下内容:

      1. FROM openjdk:8-jre-alpine
      2. VOLUME /tmp
      3. COPY target/xxl-job-admin-2.3.0.jar app.jar
      4. ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
    2. 为 xxl-job-executor-sample 编写 Dockerfile

      在 xxl-job/xxl-job-executor-sample 目录下创建一个名为 Dockerfile 的文件,并添加以下内容:

      1. FROM openjdk:8-jre-alpine
      2. VOLUME /tmp
      3. COPY target/xxl-job-executor-sample-2.3.0.jar app.jar
      4. ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

    步骤二:构建 Docker 镜像

    1. 构建 xxl-job-admin 镜像

      在 xxl-job/xxl-job-admin 目录下运行以下命令:

      docker build -t xxl-job-admin:2.3.0 .
    2. 构建 xxl-job-executor-sample 镜像

      在 xxl-job/xxl-job-executor-sample 目录下运行以下命令:

      docker build -t xxl-job-executor-sample:2.3.0 .

    步骤三:启动 MySQL 容器

    1. 启动 MySQL(虚拟机主机安装的mysql)

    2. 拉取并启动mysql容器(可选)

      docker run --name xxl-job-mysql -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=xxl_job -e MYSQL_USER=xxl_job -e MYSQL_PASSWORD=xxl_job -p 3306:3306 -d mysql:5.7
    3. 等待 MySQL 容器启动完成

      可以通过以下命令查看 MySQL 容器的日志,确认 MySQL 服务已经启动:

      docker logs -f xxl-job-mysql

    步骤四:启动 Xxl-Job Admin 容器

    1. 启动 xxl-job-admin 容器

      1. docker run -d \
      2. -e PARAMS="--spring.datasource.url=jdbc:mysql://youserverip:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai \
      3. --spring.datasource.username=root \
      4. --spring.datasource.password=root \
      5. --spring.datasource.driver-class-name=com.mysql.jdbc.Driver" \
      6. -p 8080:8080 \
      7. --name my-xxl-job-admin-2.3.0 \
      8. -d xxj-job-admin-v1.0
      9. ///youserverip:是你的虚拟机主机IP
    2. 检查 xxl-job-admin 容器状态

      docker logs -f xxl-job-admin

    步骤五:启动 Xxl-Job Executor 容器

    1. 启动 xxl-job-executor-sample 容器

      1. docker run --name xxl-job-executor
      2. -e XXL_JOB_ADMIN_ADDRESSES=http://xxl-job-admin:8080/xxl-job-admin
      3. -e XXL_JOB_EXECUTOR_APPNAME=xxl-job-executor
      4. -e XXL_JOB_EXECUTOR_IP=127.0.0.1
      5. -e XXL_JOB_EXECUTOR_PORT=9999 -p 9999:9999
      6. --link xxl-job-admin:xxl-job-admin -d xxl-job-executor-sample:2.3.0
    2. 检查 xxl-job-executor 容器状态

      docker logs -f xxl-job-executor

    步骤六:访问 Xxl-Job 管理界面

    1. 打开浏览器,访问 http://localhost:8080/xxl-job-admin
    2. 默认用户名和密码是 admin/admin

    步骤七:配置执行器

    1. 登录到 Xxl-Job 管理界面后,导航到“执行器管理”页面。
    2. 添加一个新的执行器,名称可以随意填写,例如 xxl-job-executor,地址填写 http://xxl-job-executor:9999/xxl-job-executor.

    步骤八:测试任务

    1. 导航到“任务管理”页面,添加一个新的任务。
    2. 配置任务的基本信息和调度策略,然后保存。
    3. 手动触发任务,查看日志确认任务是否成功执行。

    清理资源

    如果不再需要这些服务,可以使用以下命令停止并删除容器:

    1. docker stop xxl-job-executor xxl-job-admin xxl-job-mysql
    2. docker rm xxl-job-executor xxl-job-admin xxl-job-mysql

    这样,你就完成了使用 Docker 部署本地构建的 Xxl-Job 任务调度平台的过程。

  • 相关阅读:
    反射及在运用过程中出现的IllegalAccessException异常
    零基础能学大数据技术吗?学完能找到工作吗?
    嵌入式学习笔记(61)位操作符
    Revit技巧 | 三步教你提升Revit性能,纵享丝滑
    MAC地址修改工具 WiFiSpoof 简体中文
    Lua 点 冒号面向对象 继承
    springboot 跨域配置(处理filter,spring security等过滤器跨域问题)
    机器学习(三十五):多层感知器分类器
    【Java每日一题】— —第十九题:用二维数组存放九九乘法表,并将其输出。(2023.10.03)
    基于K8S部署filebeat及logstash并输出到java程序中
  • 原文地址:https://blog.csdn.net/m0_65664914/article/details/139578949