docs(guide): 更新 XXL-JOB 安装部署文档并优化 Docker 配置

3.4.0-release
xuxueli 7 months ago
parent bc514fbad1
commit 5bd1a81734

@ -1826,13 +1826,18 @@ git clone --branch "$(curl -s https://api.github.com/repos/xuxueli/xxl-job/relea
mvn clean package -Dmaven.test.skip=true mvn clean package -Dmaven.test.skip=true
``` ```
- 第三步:启动 XXL-JOB - 第三步:配置 XXL-JOB
``` ```
// 注意前往docker目录自定义 .env 配置;如修改 MYSQL_PATH 配置设置Mysql数据持久化目录
cd ./docker
cat .env
```
- 第四步:启动 XXL-JOB
```
// 启动
docker compose down docker compose down
docker compose up -d docker compose up -d
// 其他如需调整环境配置如Mysql密码、端口等可以在docker-compose.yml中修改另外如果需要修改Mysql数据持久化目录可以通过 MYSQL_PATH 变量在启动时快速设置;
MYSQL_PATH={自定义数据库持久化目录} docker compose up -d
``` ```
### 5.25 优雅停机 ### 5.25 优雅停机
@ -2753,8 +2758,11 @@ public void execute() {
git clone --branch "$(curl -s https://api.github.com/repos/xuxueli/xxl-job/releases/latest | jq -r .tag_name)" https://github.com/xuxueli/xxl-job.git git clone --branch "$(curl -s https://api.github.com/repos/xuxueli/xxl-job/releases/latest | jq -r .tag_name)" https://github.com/xuxueli/xxl-job.git
// 构建 XXL-JOB // 构建 XXL-JOB
mvn clean package -Dmaven.test.skip=true mvn clean package -Dmaven.test.skip=true
// 配置 XXL-JOB前往docker目录自定义 .env
cd ./docker
cat .env
// 启动 XXL-JOB // 启动 XXL-JOB
MYSQL_PATH={自定义数据库持久化目录} docker compose up -d docker compose up -d
// 停止 XXL-JOB // 停止 XXL-JOB
docker compose down docker compose down
``` ```

@ -0,0 +1,7 @@
# admin
XXL_JOB_ADMIN_PORT=8080
# database
MYSQL_ROOT_PASSWORD=root_pwd
MYSQL_PATH=/Users/admin/program/docker/instance/mysql2

@ -7,18 +7,18 @@ services:
container_name: xxl-job-mysql container_name: xxl-job-mysql
environment: environment:
# 1、数据库密码设置需要与Admin中配置一致 # 1、数据库密码设置需要与Admin中配置一致
MYSQL_ROOT_PASSWORD: root_pwd MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
# 2、数据库实例名称需要与Admin中配置一致 # 2、数据库实例名称需要与Admin中配置一致
MYSQL_DATABASE: xxl_job MYSQL_DATABASE: xxl_job
ports: ports:
- "3306:3306" - "3306:3306"
volumes: volumes:
# 说明:仅数据库首次初始化时执行; # 说明:仅数据库首次初始化时执行;
- ./doc/db/tables_xxl_job.sql:/docker-entrypoint-initdb.d/tables_xxl_job.sql:ro - ../doc/db/tables_xxl_job.sql:/docker-entrypoint-initdb.d/tables_xxl_job.sql:ro
# 3、数据库持久化目录位置建议自定义 # 3、数据库持久化目录位置建议自定义
- ${MYSQL_PATH:-/Users/admin/program/docker/instance/mysql}/conf:/etc/mysql/conf.d - ${MYSQL_PATH}/conf:/etc/mysql/conf.d
- ${MYSQL_PATH:-/Users/admin/program/docker/instance/mysql}/logs:/var/log/mysql - ${MYSQL_PATH}/logs:/var/log/mysql
- ${MYSQL_PATH:-/Users/admin/program/docker/instance/mysql}/data:/var/lib/mysql - ${MYSQL_PATH}/data:/var/lib/mysql
command: >- command: >-
--character-set-server=utf8mb4 --character-set-server=utf8mb4
--collation-server=utf8mb4_unicode_ci --collation-server=utf8mb4_unicode_ci
@ -34,7 +34,7 @@ services:
#image: xuxueli/xxl-job-admin:{version} #image: xuxueli/xxl-job-admin:{version}
image: xuxueli/xxl-job-admin:local image: xuxueli/xxl-job-admin:local
build: build:
context: ./xxl-job-admin context: ../xxl-job-admin
dockerfile: Dockerfile dockerfile: Dockerfile
container_name: xxl-job-admin container_name: xxl-job-admin
environment: environment:
@ -42,9 +42,9 @@ services:
PARAMS: >- PARAMS: >-
--spring.datasource.url=jdbc:mysql://mysql:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai --spring.datasource.url=jdbc:mysql://mysql:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai
--spring.datasource.username=root --spring.datasource.username=root
--spring.datasource.password=root_pwd --spring.datasource.password=${MYSQL_ROOT_PASSWORD}
ports: ports:
- "8080:8080" - "8080:${XXL_JOB_ADMIN_PORT}"
depends_on: depends_on:
mysql: mysql:
condition: service_healthy condition: service_healthy
@ -58,7 +58,8 @@ services:
dockerfile: Dockerfile dockerfile: Dockerfile
container_name: xxl-job-executor-sample-springboot container_name: xxl-job-executor-sample-springboot
environment: environment:
PARAMS: "--xxl.job.admin.addresses=http://xxl-job-admin:8080/xxl-job-admin" PARAMS: >-
--xxl.job.admin.addresses=http://xxl-job-admin:${XXL_JOB_ADMIN_PORT}/xxl-job-admin
ports: ports:
- "9999:9999" - "9999:9999"
depends_on: depends_on:
Loading…
Cancel
Save