3 changed files with 97 additions and 0 deletions
@ -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 @@ |
|||||||
|
# 基础镜像 |
||||||
|
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 @@ |
|||||||
|
#!/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