3 changed files with 97 additions and 0 deletions
			
			
		| @ -0,0 +1,68 @@@@ -0,0 +1,68 @@ | ||||
| kind: pipeline | ||||
| type: docker | ||||
| name: drone-dev-db-bastion-server | ||||
| 
 | ||||
| # 触发器 | ||||
| trigger: | ||||
|   # 触发分支 | ||||
|   branch: | ||||
|     - master | ||||
|   # 触发事件 | ||||
|   event: | ||||
|     - push | ||||
|   # 事件状态 | ||||
|   status: | ||||
|     - success | ||||
| 
 | ||||
| # 共享目录 | ||||
| volumes: | ||||
|   - name: maven-cache | ||||
|     host: | ||||
|       path: /data/drone/m2/cache | ||||
|   - name: maven-build | ||||
|     host: | ||||
|       path: /data/drone/m2/build | ||||
|   - name: docker-sock | ||||
|     host: | ||||
|       path: /var/run/docker.sock | ||||
| 
 | ||||
| # ci 步骤 | ||||
| steps: | ||||
|   # 打包jar | ||||
|   - name: maven-package | ||||
|     image: maven:3.6.3-jdk-8 | ||||
|     volumes: | ||||
|       - name: maven-cache | ||||
|         path: /root/.m2 | ||||
|       - name: maven-build | ||||
|         path: /app/build | ||||
|     commands: | ||||
|       - echo 'maven package start' | ||||
|       # 打包 | ||||
|       - mvn clean package -Dmaven.test.skip=true | ||||
|       # 拷贝打包结果到宿主机 | ||||
|       - mkdir -p /app/build/db-bastion-server | ||||
|       - cp target/db-bastion-server.jar /app/build/db-bastion-server/db-bastion-server.jar | ||||
| 
 | ||||
|   # 构建镜像 | ||||
|   - name: build-image | ||||
|     image: docker:dind | ||||
|     volumes: | ||||
|       - name: docker-sock | ||||
|         path: /var/run/docker.sock | ||||
|     commands: | ||||
|       - echo 'build image start' | ||||
|       # 构建新镜像 | ||||
|       - docker build -t niushuai233/db-bastion-server:latest . | ||||
|       # 清理无用镜像 | ||||
|       - docker image prune -f --filter "dangling=true" | ||||
| 
 | ||||
|   # 启动服务 | ||||
|   - name: deploy | ||||
|     image: docker:dind | ||||
|     volumes: | ||||
|       - name: docker-sock | ||||
|         path: /var/run/docker.sock | ||||
|     commands: | ||||
|       - echo 'deploy start' | ||||
|       - sh run.sh | ||||
| @ -0,0 +1,11 @@@@ -0,0 +1,11 @@ | ||||
| # 基础镜像 | ||||
| FROM openjdk:8-jre-slim | ||||
| # 维护者信息 | ||||
| MAINTAINER niushuai233 shuai.niu@foxmail.com | ||||
| # 拷贝jar | ||||
| ADD target/*.jar /app.jar | ||||
| # 设置时区 | ||||
| RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime | ||||
| RUN echo 'Asia/Shanghai' >/etc/timezone | ||||
| # 入口程序 | ||||
| ENTRYPOINT ["java", "-jar", "/app.jar"] | ||||
| @ -0,0 +1,18 @@@@ -0,0 +1,18 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| d_group_name=niushuai233 | ||||
| d_app_name=db-bastion-server | ||||
| d_app_version=latest | ||||
| d_app_port_inner=8080 | ||||
| d_app_port_export= | ||||
| 
 | ||||
| if [[ -n $(docker ps -q -f "name=^${d_app_name}$") ]];then | ||||
|   echo "${d_app_name} already started before ==> rm" | ||||
|   docker rm -f ${d_app_name} | ||||
|   echo "${d_app_name} rm success" | ||||
| else | ||||
|   echo "${d_app_name} never started" | ||||
| fi | ||||
| 
 | ||||
| docker run -dit -p ${d_app_port_export}:${d_app_port_inner} --name=${d_app_name} ${d_group_name}/${d_app_name}:${d_app_version} | ||||
| echo "${d_app_name} started" | ||||
					Loading…
					
					
				
		Reference in new issue