一、项目构建
1、从gitee上下载源码:xxl-job: 一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。https://gitee.com/xuxueli0323/xxl-job 2、本地使用ieda修改配置并构建启动运行
3、将项目文件压缩上传虚拟机上
4、在虚拟机上解压到某一路径
5、使用docker部署
二、部署
步骤一:编写 Dockerfile
-
为
xxl-job-admin
编写 Dockerfile在
xxl-job/xxl-job-admin
目录下创建一个名为Dockerfile
的文件,并添加以下内容:FROM openjdk:8-jre-alpine VOLUME /tmp COPY target/xxl-job-admin-2.3.0.jar app.jar ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
-
为
xxl-job-executor-sample
编写 Dockerfile在
xxl-job/xxl-job-executor-sample
目录下创建一个名为Dockerfile
的文件,并添加以下内容:FROM openjdk:8-jre-alpine VOLUME /tmp COPY target/xxl-job-executor-sample-2.3.0.jar app.jar ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
步骤二:构建 Docker 镜像
-
构建
xxl-job-admin
镜像在
xxl-job/xxl-job-admin
目录下运行以下命令:docker build -t xxl-job-admin:2.3.0 .
-
构建
xxl-job-executor-sample
镜像在
xxl-job/xxl-job-executor-sample
目录下运行以下命令:docker build -t xxl-job-executor-sample:2.3.0 .
步骤三:启动 MySQL 容器
-
启动 MySQL(虚拟机主机安装的mysql)
-
拉取并启动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
-
等待 MySQL 容器启动完成
可以通过以下命令查看 MySQL 容器的日志,确认 MySQL 服务已经启动:
docker logs -f xxl-job-mysql
步骤四:启动 Xxl-Job Admin 容器
-
启动
xxl-job-admin
容器docker run -d \ -e PARAMS="--spring.datasource.url=jdbc:mysql://youserverip:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai \ --spring.datasource.username=root \ --spring.datasource.password=root \ --spring.datasource.driver-class-name=com.mysql.jdbc.Driver" \ -p 8080:8080 \ --name my-xxl-job-admin-2.3.0 \ -d xxj-job-admin-v1.0 ///youserverip:是你的虚拟机主机IP
-
检查
xxl-job-admin
容器状态docker logs -f xxl-job-admin
步骤五:启动 Xxl-Job Executor 容器
-
启动
xxl-job-executor-sample
容器docker run --name xxl-job-executor -e XXL_JOB_ADMIN_ADDRESSES=http://xxl-job-admin:8080/xxl-job-admin -e XXL_JOB_EXECUTOR_APPNAME=xxl-job-executor -e XXL_JOB_EXECUTOR_IP=127.0.0.1 -e XXL_JOB_EXECUTOR_PORT=9999 -p 9999:9999 --link xxl-job-admin:xxl-job-admin -d xxl-job-executor-sample:2.3.0
-
检查
xxl-job-executor
容器状态docker logs -f xxl-job-executor
步骤六:访问 Xxl-Job 管理界面
- 打开浏览器,访问
http://localhost:8080/xxl-job-admin
。 - 默认用户名和密码是
admin/admin
。
步骤七:配置执行器
- 登录到 Xxl-Job 管理界面后,导航到“执行器管理”页面。
- 添加一个新的执行器,名称可以随意填写,例如
xxl-job-executor
,地址填写http://xxl-job-executor:9999/xxl-job-executor
.
步骤八:测试任务
- 导航到“任务管理”页面,添加一个新的任务。
- 配置任务的基本信息和调度策略,然后保存。
- 手动触发任务,查看日志确认任务是否成功执行。
清理资源
如果不再需要这些服务,可以使用以下命令停止并删除容器:
docker stop xxl-job-executor xxl-job-admin xxl-job-mysql
docker rm xxl-job-executor xxl-job-admin xxl-job-mysql
这样,你就完成了使用 Docker 部署本地构建的 Xxl-Job 任务调度平台的过程。