change 4 жил өмнө
parent
commit
16bcc8e3e0
3 өөрчлөгдсөн 132 нэмэгдсэн , 6 устгасан
  1. 6 6
      .drone.yml
  2. 99 0
      run-admin-prod.sh
  3. 27 0
      run-prod.sh

+ 6 - 6
.drone.yml

@@ -17,8 +17,8 @@ steps: # 定义流水线执行步骤,这些步骤将顺序执行
       - cp /drone/src/zhongzheng-admin/target/zhongzheng-admin.jar /app/build/zhongzheng-admin.jar
       - cp Dockerfile /app/build/Dockerfile
       - cp Dockerfile-admin /app/build/Dockerfile-admin
-      - cp run.sh /app/build/run.sh
-      - cp run-admin.sh /app/build/run-admin.sh
+      - cp run-prod.sh /app/build/run-prod.sh
+      - cp run-admin-prod.sh /app/build/run-admin-prod.sh
 
   - name: build-start
     image: appleboy/drone-ssh:latest # SSH工具镜像
@@ -31,10 +31,10 @@ steps: # 定义流水线执行步骤,这些步骤将顺序执行
       command_timeout: 5m # 远程执行命令超时时间
       script:
         - cd /mydata/maven/build # 进入宿主机构建目录
-        - chmod +x run.sh # 更改为可执行脚本
-        - chmod +x run-admin.sh # 更改为可执行脚本
-        - ./run.sh # 运行脚本打包应用镜像并运行
-        - ./run-admin.sh # 运行脚本打包应用镜像并运行
+        - chmod +x run-prod.sh # 更改为可执行脚本
+        - chmod +x run-admin-prod.sh # 更改为可执行脚本
+        - ./run-prod.sh # 运行脚本打包应用镜像并运行
+        - ./run-admin-prod.sh # 运行脚本打包应用镜像并运行
 
 volumes: # 定义流水线挂载目录,用于共享数据
   - name: maven-build

+ 99 - 0
run-admin-prod.sh

@@ -0,0 +1,99 @@
+#!/usr/bin/env bash
+# 定义应用组名
+group_admin_name='zhongzheng'
+# 定义应用名称
+app_admin_name='zhongzheng-admin'
+# 定义应用版本
+app_admin_version='1.0-SNAPSHOT'
+# 定义应用环境
+profile_active='prod'
+echo '----copy jar admin----'
+docker stop ${app_admin_name}
+echo '----stop container admin----'
+docker rm ${app_admin_name}
+echo '----rm container admin----'
+docker rmi ${group_admin_name}/${app_admin_name}:${app_admin_version}
+echo '----rm image admin----'
+# 打包编译docker镜像
+docker build -f /mydata/maven/build/Dockerfile-admin -t ${group_admin_name}/${app_admin_name}:${app_admin_version} .
+echo '----build image admin----'
+docker run \
+-p 9099:9099 \
+--name ${app_admin_name} \
+--link mysql:db \
+-e 'spring.profiles.active'=${profile_active} \
+-e TZ="Asia/Shanghai" \
+-v /etc/localtime:/etc/localtime \
+-v /mydata/app/${app_admin_name}/logs:/var/logs \
+-d ${group_admin_name}/${app_admin_name}:${app_admin_version}
+echo '----start container admin----'
+
+
+echo "开始等待20秒..."
+# 1-10秒内随机
+sleep 20
+echo "等待后继续"
+
+# 定义应用组名
+group_admin_name_two='zhongzheng_two'
+# 定义应用名称
+app_admin_name_two='zhongzheng-admin_two'
+# 定义应用版本
+app_admin_version_two='1.0-SNAPSHOT'
+# 定义应用环境
+profile_active_two='prod'
+echo '----copy jar admin----'
+docker stop ${app_admin_name_two}
+echo '----stop container admin----'
+docker rm ${app_admin_name_two}
+echo '----rm container admin----'
+docker rmi ${group_admin_name_two}/${app_admin_name_two}:${app_admin_version_two}
+echo '----rm image admin----'
+# 打包编译docker镜像
+docker build -f /mydata/maven/build/Dockerfile-admin -t ${group_admin_name_two}/${app_admin_name_two}:${app_admin_version_two} .
+echo '----build image admin----'
+docker run \
+-p 10000:9099 \
+--name ${app_admin_name_two} \
+--link mysql:db \
+-e 'spring.profiles.active'=${profile_active_two} \
+-e TZ="Asia/Shanghai" \
+-v /etc/localtime:/etc/localtime \
+-v /mydata/app/${app_admin_name_two}/logs:/var/logs \
+-d ${group_admin_name_two}/${app_admin_name_two}:${app_admin_version_two}
+echo '----start container admin----'
+
+
+echo "开始等待20秒..."
+# 1-10秒内随机
+sleep 20
+echo "等待后继续"
+
+# 定义应用组名
+group_admin_name_three='zhongzheng_three'
+# 定义应用名称
+app_admin_name_three='zhongzheng-admin_three'
+# 定义应用版本
+app_admin_version_three='1.0-SNAPSHOT'
+# 定义应用环境
+profile_active_three='dev'
+echo '----copy jar admin----'
+docker stop ${app_admin_name_three}
+echo '----stop container admin----'
+docker rm ${app_admin_name_three}
+echo '----rm container admin----'
+docker rmi ${group_admin_name_three}/${app_admin_name_three}:${app_admin_version_three}
+echo '----rm image admin----'
+# 打包编译docker镜像
+docker build -f /mydata/maven/build/Dockerfile-admin -t ${group_admin_name_three}/${app_admin_name_three}:${app_admin_version_three} .
+echo '----build image admin----'
+docker run \
+-p 10001:9099 \
+--name ${app_admin_name_three} \
+--link mysql:db \
+-e 'spring.profiles.active'=${profile_active_three} \
+-e TZ="Asia/Shanghai" \
+-v /etc/localtime:/etc/localtime \
+-v /mydata/app/${app_admin_name_three}/logs:/var/logs \
+-d ${group_admin_name_three}/${app_admin_name_three}:${app_admin_version_three}
+echo '----start container admin----'

+ 27 - 0
run-prod.sh

@@ -0,0 +1,27 @@
+#!/usr/bin/env bash
+# 定义应用组名
+group_name='zhongzheng'
+# 定义应用名称
+app_name='zhongzheng-api'
+# 定义应用版本
+app_version='1.0-SNAPSHOT'
+# 定义应用环境
+profile_active='prod'
+echo '----copy jar----'
+docker stop ${app_name}
+echo '----stop container----'
+docker rm ${app_name}
+echo '----rm container----'
+docker rmi ${group_name}/${app_name}:${app_version}
+echo '----rm image----'
+# 打包编译docker镜像
+docker build -f /mydata/maven/build/Dockerfile -t ${group_name}/${app_name}:${app_version} .
+echo '----build image----'
+docker run -p 8088:8088 --name ${app_name} \
+--link mysql:db \
+-e 'spring.profiles.active'=${profile_active} \
+-e TZ="Asia/Shanghai" \
+-v /etc/localtime:/etc/localtime \
+-v /mydata/app/${app_name}/logs:/var/logs \
+-d ${group_name}/${app_name}:${app_version}
+echo '----start container----'