5
5
# @version: v1.1.0
6
6
# ########################
7
7
8
- # ####################################### start ######################################
9
- latest_version=latest
10
-
11
- # ####################################### build ######################################
12
- # # build by docker-compose-build-code.yml
13
- docker-compose -f ../docker/docker-compose-build-code.yml build
8
+ build_and_push_image () {
9
+ local image_name=$1
10
+ local tag=$2
11
+ local target_name=$3
12
+
13
+ echo " ###################################### build iamtsm/tl-rtc-file-$target_name :$tag "
14
+ # # build by docker-compose-build-code.yml
15
+ docker-compose -f ../docker/docker-compose-build-code.yml build $image_name
14
16
15
- # ####################################### tag ########################################
16
- # tag latest version
17
- docker tag docker-api:$latest_version iamtsm/tl-rtc-file-api:$latest_version
18
- docker tag docker-socket:$latest_version iamtsm/tl-rtc-file-socket:$latest_version
19
- docker tag docker-mysql:$latest_version iamtsm/tl-rtc-file-mysql:$latest_version
20
- docker tag docker-coturn:$latest_version iamtsm/tl-rtc-file-coturn:$latest_version
17
+ echo " ###################################### tag iamtsm/tl-rtc-file-$target_name :$tag "
18
+ docker tag docker-$image_name :$tag iamtsm/tl-rtc-file-$target_name :$tag
21
19
22
- # ####################################### push #######################################
23
- # push latest version
24
- docker push iamtsm/tl-rtc-file-api:$latest_version
25
- docker push iamtsm/tl-rtc-file-socket:$latest_version
26
- docker push iamtsm/tl-rtc-file-mysql:$latest_version
27
- docker push iamtsm/tl-rtc-file-coturn:$latest_version
20
+ echo " ###################################### push iamtsm/tl-rtc-file-$target_name :$tag "
21
+ # docker push iamtsm/tl-rtc-file-$target_name:$tag
28
22
29
- # ####################################### del ########################################
30
- # # del build version
31
- docker rmi docker-api: $latest_version
32
- docker rmi docker-socket: $latest_version
33
- docker rmi docker-mysql: $latest_version
34
- docker rmi docker-coturn: $latest_version
23
+ echo " ###################################### del iamtsm/tl-rtc-file- $target_name : $tag "
24
+ # # del build version
25
+ docker rmi docker-$image_name : $tag
26
+ # # del tag build version
27
+ docker rmi iamtsm/tl-rtc-file- $target_name : $tag
28
+ }
35
29
36
- # # del tag build version
37
- docker rmi iamtsm/tl-rtc-file-api:$latest_version
38
- docker rmi iamtsm/tl-rtc-file-socket:$latest_version
39
- docker rmi iamtsm/tl-rtc-file-mysql:$latest_version
40
- docker rmi iamtsm/tl-rtc-file-coturn:$latest_version
30
+ latest_version=latest
41
31
42
- # ####################################### done #######################################
32
+ if [ $# -eq 0 ]; then
33
+ # 如果没有传入参数,默认执行所有镜像的打包发布逻辑
34
+ echo " Please input args"
35
+ else
36
+ # 有传入参数时,遍历处理每个参数
37
+ for image_arg in " $@ " ; do
38
+ case $image_arg in
39
+ api)
40
+ build_and_push_image " api" $latest_version " api"
41
+ ;;
42
+ socket)
43
+ build_and_push_image " socket" $latest_version " socket"
44
+ ;;
45
+ mysql)
46
+ build_and_push_image " mysql" $latest_version " mysql"
47
+ ;;
48
+ coturn)
49
+ build_and_push_image " coturn" $latest_version " coturn"
50
+ ;;
51
+ * )
52
+ echo " Invalid argument: $image_arg "
53
+ ;;
54
+ esac
55
+ done
56
+ fi
0 commit comments