diff --git a/.drone.yml b/.drone.yml index c268c79..8f28698 100644 --- a/.drone.yml +++ b/.drone.yml @@ -8,10 +8,36 @@ steps: # 定义管道的执行步骤 - name: maven-cache path: /root/.m2 # 将maven下载依赖的目录挂载出来,防止重复下载 - name: maven-build - path: /usr/local/app/build # 将应用打包好的Jar和执行脚本挂载出来 + path: /app/build # 将应用打包好的Jar和执行脚本挂载出来 commands: # 当前步骤执行的命令 - mvn clean package -DskipTests=true # 应用打包命 - - cp target/ips-ci-demo-1.0.jar /usr/local/app/build/ips-ci-demo-1.0.jar - - cp entrypoint.sh /usr/local/app/build/ - - cp Dockerfile /usr/local/app/build/ - - cp run.sh /usr/local/app/build/ \ No newline at end of file + - cp target/ips-ci-demo-1.0.jar /app/build/ips-ci-demo-1.0.jar + - cp entrypoint.sh /app/build/ + - cp Dockerfile /app/build/ + - cp run.sh /app/build/ + + - name: build-docker + image: plugins/docker + volumes: # 将容器内目录挂载到宿主机,仓库需要开启Trusted设置 + - name: maven-build + path: /app/build # 将应用打包好的Jar和执行脚本挂载出来 + - name: docker + path: /var/run/docker.sock # 挂载宿主机的docker + settings: + dockerfile: /app/build/Dockerfile + commands: # 定义在Docker容器中执行的shell命令 + - cd /app/build + - chmod +x run.sh + - sh run.sh + - docker ps + +volumes: # 定义流水线挂载目录,用于共享数据 + - name: maven-build + host: + path: /home/data/maven/build # 从宿主机中挂载的目录 + - name: maven-cache + host: + path: /home/data/maven/cache + - name: docker + host: + path: /var/run/docker.sock \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index b0e2a00..5ff7dfb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,14 +2,14 @@ FROM openjdk:8-alpine3.9 ENV SERVICE_PORTS=8000 -RUN mkdir -p /usr/local/app/ +RUN mkdir -p /app/ -WORKDIR /usr/local/app +WORKDIR /app -COPY ./entrypoint.sh /usr/local/app/ -RUN chmod 755 -R /usr/local/app/ +COPY ./entrypoint.sh /app/ +RUN chmod 755 -R /app/ -COPY ./ips-ci-demo-1.0*.jar /usr/local/app/ +COPY ./ips-ci-demo-1.0*.jar /app/ -ENTRYPOINT ["/usr/local/app/entrypoint.sh"] +ENTRYPOINT ["/app/entrypoint.sh"] diff --git a/entrypoint.sh b/entrypoint.sh index d8ad51a..874fac2 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -1,6 +1,6 @@ #!/bin/sh -java -Xms128m -Xmx128m -jar /usr/local/app/ips-ci-demo-1.0*.jar +java -Xms128m -Xmx128m -jar /app/ips-ci-demo-1.0*.jar if [ $? != 0 ]; then echo Failed to start java >&2