0 序
- 安裝信息
- mysql : 5.7.x
- xxl-job-admin : 2.4.1
- linux : centos 7.9
1 安裝步驟
Step1 安裝 docker 環境
yum -y update
yum remove docker docker-common docker-selinux docker-engine
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum list docker-ce --showduplicates | sort -r
yum -y install docker-ce-25.0.3-1.el7
docker version
systemctl start docker
systemctl status docker
# 開機自啓動
systemctl enable docker
Step2 安裝並初始化 mysql
Step2.1 安裝 mysql 5.7
Step2.2 執行 mysql 初始化腳本
執行初始化腳本
參見 : https://github.com/xuxueli/xxl-job/blob/refs/tags/2.4.1/doc/db/tables_xxl_job.sql
特別注意
-- 已含: 創建數據庫 xxl_job
-- CREATE database if NOT EXISTS `xxl_job` default character set utf8 collate utf8_general_ci;
創建 用戶,並授權
# 創建用戶
CREATE USER xxl_job@'%';
ALTER USER xxl_job@'%' IDENTIFIED BY '123456789';
# 用戶授權
-- 給用戶 userName 授予數據庫(db001)的 SELECT,INSERT,UPDATE,DELETE,CREATE,DROP 權限
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON xxl_job.* TO xxl_job@'%' IDENTIFIED BY '123456789'; -- mysql 5.x
-- GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON xxl_job.* TO xxl_job@'%' WITH GRANT OPTION; -- mysql 8.x
FLUSH PRIVILEGES;
驗證/確保本機與mysql的網絡聯通
ssh -v 192.168.1.2 -p 3306
Step3 安裝 xxl-job-admin
- 拉取鏡像
docker pull xuxueli/xxl-job-admin:2.4.1
https://github.com/xuxueli/xxl-job/releases
https://github.com/xuxueli/xxl-job/tree/refs/tags/2.4.1
- 查看拉取下來的鏡像
docker images
- 創建容器外置的宿主機目錄
mkdir -p /data/xxl-job-admin/data/applogs/xxl-job
mkdir -p /data/xxl-job-admin/tmp
echo "" > /data/xxl-job-admin/data/applogs/xxl-job/xxl-job-admin.log
- 創建容器、並啓動
docker run --name xxl-job-admin --restart=always -e PARAMS="--spring.datasource.url=jdbc:mysql://192.168.1.2:3306/xxl_job?Unicode=true&characterEncoding=UTF-8 --spring.datasource.username=xxl_job --spring.datasource.password=123456789 --server.port=8080 --server.servlet.context-path=/xxl-job-admin" -p 8080:8080 -v /tmp:/data/xxl-job-admin/tmp -v /data/xxl-job-admin/data/applogs/xxl-job:/data/applogs/xxl-job -v /data/xxl-job-admin/tmp:/tmp -d xuxueli/xxl-job-admin:2.4.1
- 查看容器運行情況
docker ps
docker logs xxl-job-admin
# 如果運行存在異常時,可暫停運行:
# docker stop xxl-job-admin
# 如果運行存在異常的容器時,可刪除該容器:(以便後面重新構建新容器)
# docker rm -f xxl-job-admin
# 查看容器內部
docker exec -it xxl-job-admin sh -c "ls -la /"
ls -la /data/xxl-job-admin/data/applogs/xxl-job/xxl-job-admin.log
tailf /data/xxl-job-admin/data/applogs/xxl-job/xxl-job-admin.log
ls -la /data/xxl-job-admin/tmp
Step4 訪問 xxl-job-admin
- 訪問
curl -v http://127.0.0.1:8080/xxl-job-admin
curl -v http://192.168.1.101:8080/xxl-job-admin默認賬號:amdin 密碼:123456
2 卸載步驟
- 刪除 xxl-job-admin 容器
docker rm -f xxl-job-admin
- 查驗容器是否存在、存活
docker ps -a
X 參考文獻
- xxl-job
基於 docker compose