Kaynağa Gözat

drone自动化部署脚本文件

change 4 yıl önce
ebeveyn
işleme
b35583e616
3 değiştirilmiş dosya ile 42 ekleme ve 0 silme
  1. 5 0
      .drone.yml
  2. 10 0
      Dockerfile-admin
  3. 27 0
      run-admin.sh

+ 5 - 0
.drone.yml

@@ -13,8 +13,11 @@ steps: # 定义流水线执行步骤,这些步骤将顺序执行
     commands: # 定义在Docker容器中执行的shell命令
       - mvn clean package # 应用打包命令
       - cp /drone/src/zhongzheng-api/target/zhongzheng-api.jar /app/build/zhongzheng-api.jar
+      - 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
 
   - name: build-start
     image: appleboy/drone-ssh:latest # SSH工具镜像
@@ -28,7 +31,9 @@ steps: # 定义流水线执行步骤,这些步骤将顺序执行
       script:
         - cd /mydata/maven/build # 进入宿主机构建目录
         - chmod +x run.sh # 更改为可执行脚本
+        - chmod +x run-admin.sh # 更改为可执行脚本
         - ./run.sh # 运行脚本打包应用镜像并运行
+        - ./run-admin.sh # 运行脚本打包应用镜像并运行
 
 volumes: # 定义流水线挂载目录,用于共享数据
   - name: maven-build

+ 10 - 0
Dockerfile-admin

@@ -0,0 +1,10 @@
+# 该镜像需要依赖的基础镜像
+FROM java:8
+# 将当前目录下的jar包复制到docker容器的/目录下
+ADD zhongzheng-admin.jar /app.jar
+# 声明服务运行在8080端口
+EXPOSE 9099
+# 指定docker容器启动时运行jar包
+ENTRYPOINT ["java", "-jar","/app.jar"]
+# 指定维护者的名字
+MAINTAINER change

+ 27 - 0
run-admin.sh

@@ -0,0 +1,27 @@
+#!/usr/bin/env bash
+# 定义应用组名
+group_name='zhongzheng'
+# 定义应用名称
+app_name='zhongzheng-admin'
+# 定义应用版本
+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 -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----'