[任務/調度/Docker] 基於Docker安裝XXL-Job-Admin

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

詳情參見: [Docker] 基於CENTOS7安裝Docker環境 - 博客園/千千寰宇

Step2 安裝並初始化 mysql

Step2.1 安裝 mysql 5.7

參見 : [mysql/docker] 基於Docker安裝MYSQL - 博客園/千千寰宇

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章