提交 d18775f9 编写于 作者: W wfx18388588074

Initial commit

上级 2e0c183d
{
"permissions": {
"allow": [
"Bash(docker-compose ps:*)"
]
}
}
此差异已折叠。
此差异已折叠。
# 命令执行 docker-compose up -d # 移除过时的 version 字段(Compose V2 已忽略,消除警告)
version: '3.9'
services: services:
# http://127.0.0.1:9090/xxl-job-admin admin/123456 - 安装后稍等会访问即可 # XXL-JOB 管理端(兼容 AMD/ARM 架构,避免拉取失败)
# 官网镜像为 xuxueli/xxl-job-admin 但不支持ARM架构【需要自己打包】,所以找了一个 kuschzzp/xxl-job-aarch64:2.4.0 镜像支持 AMD/ARM
xxl-job-admin: xxl-job-admin:
image: kuschzzp/xxl-job-aarch64:2.4.0 image: docker.1ms.run/xuxueli/xxl-job-admin:2.4.0 # 关键:改回兼容架构的镜像
container_name: xxl-job-admin container_name: xxl-job-admin
restart: always restart: always
depends_on: depends_on:
- mysql - mysql
ports: ports:
- "9090:9090" - "9090:9090"
links:
- mysql
volumes: volumes:
- ./data/logs:/data/applogs - ./data/logs:/data/applogs
- ./data/xxl-job/:/xxl-job - ./data/xxl-job:/xxl-job
environment: environment:
- SPRING_DATASOURCE_URL=jdbc:mysql://mysql:3306/xxl_job?serverTimezone=UTC&characterEncoding=utf8&autoReconnect=true&serverTimezone=Asia/Shanghai - SPRING_DATASOURCE_URL=jdbc:mysql://mysql:3306/xxl_job?serverTimezone=Asia/Shanghai&characterEncoding=utf8&autoReconnect=true
- SPRING_DATASOURCE_USERNAME=root - SPRING_DATASOURCE_USERNAME=root
- SPRING_DATASOURCE_PASSWORD=123456 - SPRING_DATASOURCE_PASSWORD=123456
- SERVER_PORT=9090 - SERVER_PORT=9090
networks:
- xxl-job-net # 替代废弃的 links,解决网络问题
# MySQL 8.0.32 支持 AMD/ARM # MySQL 数据库(兼容 AMD/ARM)
mysql: mysql:
image: mysql:8.0.32 image: mysql:8.0.32
container_name: mysql container_name: xxl-job-mysql
command: --default-authentication-plugin=mysql_native_password command: --default-authentication-plugin=mysql_native_password
restart: always restart: always
environment: environment:
TZ: Asia/Shanghai TZ: Asia/Shanghai
# MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' 可配置无密码,注意配置 SPRING_DATASOURCE_PASSWORD=
MYSQL_ROOT_PASSWORD: 123456 MYSQL_ROOT_PASSWORD: 123456
MYSQL_USER: xfg MYSQL_USER: xfg
MYSQL_PASSWORD: 123456 MYSQL_PASSWORD: 123456
depends_on: MYSQL_DATABASE: xxl_job # 自动创建数据库,无需手动挂载SQL
- mysql-job-dbdata
ports: ports:
- "13306:3306" - "13306:3306"
volumes: volumes:
- ./sql:/docker-entrypoint-initdb.d - ./sql:/docker-entrypoint-initdb.d # 有初始化SQL则保留,无则删除
volumes_from: - mysql-data:/var/lib/mysql # 替代 volumes_from,用命名卷持久化数据
- mysql-job-dbdata networks:
- xxl-job-net
# 自动加载数据 # 自定义网络(替代 links,避免网络冲突)
mysql-job-dbdata: networks:
image: alpine:3.18.2 xxl-job-net:
container_name: mysql-job-dbdata name: xxl-job-net
volumes:
- /var/lib/mysql # 命名数据卷(替代 mysql-job-dbdata 容器,避免 IO 错误)
volumes:
mysql-data:
name: xxl-job-mysql-data
\ No newline at end of file
...@@ -11,16 +11,16 @@ import org.springframework.stereotype.Component; ...@@ -11,16 +11,16 @@ import org.springframework.stereotype.Component;
@Component() @Component()
public class QuartzJob { public class QuartzJob {
@Scheduled(cron = "0/3 * * * * ?") @Scheduled(cron = "0/10 * * * * ?")
public void execute01() { public void execute01() {
// 可以在任务中,调用一些业务方法逻辑的实现,如定时扫描超时未支付订单为关单处理,恢复库存 // 可以在任务中,调用一些业务方法逻辑的实现,如定时扫描超时未支付订单为关单处理,恢复库存
log.info("执行任务 - Quartz - 01"); log.info("执行任务 -这是 Quartz - 01111");
} }
@Scheduled(cron = "0/3 * * * * ?") @Scheduled(cron = "0/20 * * * * ?")
public void execute02() { public void execute02() {
// 可以在任务中,调用一些业务方法逻辑的实现,如定时扫描超时未支付订单为关单处理,恢复库存 // 可以在任务中,调用一些业务方法逻辑的实现,如定时扫描超时未支付订单为关单处理,恢复库存
log.info("执行任务 - Quartz - 02"); log.info("执行任务 - 这是Quartz - 02222");
} }
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册