[任务/调度/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

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