1
+ #! /bin/bash
2
+ echo " A docker image release script for the Apple Silicon device."
3
+ # -p:允许后面跟一个字符串作为提示 -r:保证读入的是原始内容,不会发生任何转义
4
+ read -r -p " 请输入Dockedr镜像版本:" version
5
+ echo " 即将构建的 server 镜像:powerjob-server:$version "
6
+ echo " 即将构建的 agent 镜像:powerjob-agent:$version "
7
+ read -r -p " 任意键继续:"
8
+
9
+ # 一键部署脚本,请勿挪动脚本
10
+ cd ` dirname $0 ` /../.. || exit
11
+
12
+ read -r -p " 是否进行maven构建(y/n):" needmvn
13
+ if [ " $needmvn " = " y" ] || [ " $needmvn " = " Y" ]; then
14
+ echo " ================== 构建 jar =================="
15
+ # mvn clean package -Pdev -DskipTests -U -e -pl powerjob-server,powerjob-worker-agent -am
16
+ # -U:强制检查snapshot库 -pl:指定需要构建的模块,多模块逗号分割 -am:同时构建依赖模块,一般与pl连用 -Pxxx:指定使用的配置文件
17
+ mvn clean package -Pdev -DskipTests -U -e
18
+ echo " ================== 拷贝 jar =================="
19
+ /bin/cp -rf powerjob-server/powerjob-server-starter/target/* .jar powerjob-server/docker/powerjob-server.jar
20
+ /bin/cp -rf powerjob-worker-agent/target/* .jar powerjob-worker-agent/powerjob-agent.jar
21
+ ls -l powerjob-server/docker/powerjob-server.jar
22
+ ls -l powerjob-worker-agent/powerjob-agent.jar
23
+ fi
24
+
25
+ echo " ================== 关闭老应用 =================="
26
+ docker stop powerjob-server
27
+ docker stop powerjob-agent
28
+ docker stop powerjob-agent2
29
+ echo " ================== 删除老容器 =================="
30
+ docker container rm powerjob-server
31
+ docker container rm powerjob-agent
32
+ docker container rm powerjob-agent2
33
+ read -r -p " 是否构建并发布镜像(y/n):" rebuild
34
+ if [ " $rebuild " = " y" ] || [ " $rebuild " = " Y" ]; then
35
+ echo " ================== 删除旧镜像 =================="
36
+ docker rmi -f tjqq/powerjob-server:$version
37
+ docker rmi -f powerjob/powerjob-server:$version
38
+ docker rmi -f tjqq/powerjob-agent:$version
39
+ docker rmi -f powerjob/powerjob-agent:$version
40
+ docker rmi -f powerjob/powerjob-mysql:$version
41
+ docker rmi -f powerjob/powerjob-worker-samples:$version
42
+ echo " ================== 构建 powerjob-server 镜像(tjqq) =================="
43
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag tjqq/powerjob-server:$version powerjob-server/docker/. --push || exit
44
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag tjqq/powerjob-server:latest powerjob-server/docker/. --push || exit
45
+ echo " ================== 构建 powerjob-server 镜像(powerjob) =================="
46
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag powerjob/powerjob-server:$version powerjob-server/docker/. --push || exit
47
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag powerjob/powerjob-server:latest powerjob-server/docker/. --push || exit
48
+ echo " ================== 构建 powerjob-agent 镜像(tjqq) =================="
49
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag tjqq/powerjob-agent:$version powerjob-worker-agent/. --push|| exit
50
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag tjqq/powerjob-agent:latest powerjob-worker-agent/. --push|| exit
51
+ echo " ================== 构建 powerjob-agent 镜像(powerjob) =================="
52
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag powerjob/powerjob-agent:$version powerjob-worker-agent/. --push|| exit
53
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag powerjob/powerjob-agent:latest powerjob-worker-agent/. --push|| exit
54
+ echo " ================== 构建 powerjob-mysql 镜像 =================="
55
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag powerjob/powerjob-mysql:$version others/. --push|| exit
56
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag powerjob/powerjob-mysql:latest others/. --push|| exit
57
+ echo " ================== 构建 powerjob-worker-samples 镜像 =================="
58
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag powerjob/powerjob-worker-samples:$version powerjob-worker-samples/. --push|| exit
59
+ docker buildx build --platform=linux/amd64,linux/arm64 --tag powerjob/powerjob-worker-samples:latest powerjob-worker-samples/. --push|| exit
60
+ fi
0 commit comments