kind: pipeline type: docker name: dev node: mode: test_local_1 steps: - name: maven image: maven:3.6.3-jdk-11 volumes: - name: maven-cache path: /root/.m2 # 将maven下载依赖的目录挂载出来,防止重复下载 environment: - DRONE_CPU_PERIOD=50000 - DRONE_CPU_QUOTA=150000 - DRONE_MEMORY_LIMIT=4096*1024*1024*8 commands: - mvn -Dmaven.test.skip=true -P dev clean package - name: build image: docker:20.10.7 depends_on: [maven] volumes: - name: docker path: /var/run/docker.sock environment: - IMAGE=registry.yingcaibx.com/tl/api:latest - DRONE_CPU_PERIOD=50000 - DRONE_CPU_QUOTA=150000 - DRONE_MEMORY_LIMIT=4096*1024*1024*8 commands: # 清理 docker 服务中不再使用的镜像、挂载、网络等资源 - docker system prune --force --volumes || true - docker build -f ./Dockerfile -t $IMAGE ./ - name: run image: docker/compose depends_on: [build] volumes: - name: docker path: /var/run/docker.sock environment: - DRONE_CPU_PERIOD=50000 - DRONE_CPU_QUOTA=150000 - DRONE_MEMORY_LIMIT=4096*1024*1024*8 commands: - docker-compose -f docker-compose.yml up -d trigger: branch: - dev event: - push volumes: - name: docker host: path: /var/run/docker.sock - name: maven-cache host: path: /data/cache/tl/api --- kind: pipeline type: docker name: release node: mode: test_local_1 steps: - name: maven image: maven:3.6.3-jdk-11 volumes: - name: maven-cache path: /root/.m2 # 将maven下载依赖的目录挂载出来,防止重复下载 environment: - DRONE_CPU_PERIOD=50000 - DRONE_CPU_QUOTA=150000 - DRONE_MEMORY_LIMIT=4096*1024*1024*8 commands: - mvn -Dmaven.test.skip=true -P dev clean package - name: push image: docker:20.10.7 volumes: - name: docker path: /var/run/docker.sock environment: - IMAGE=registry.yingcaibx.com/tl/api - DRONE_CPU_PERIOD=50000 - DRONE_CPU_QUOTA=150000 - DRONE_MEMORY_LIMIT=4096*1024*1024*8 depends_on: [clone] commands: - docker login -u yxt -p qwe123QWE registry.yingcaibx.com - echo $DRONE_TAG - docker build -f ./app/platform/Dockerfile -t $IMAGE:$DRONE_TAG ./ - docker push $IMAGE:$DRONE_TAG - docker rmi $IMAGE:$DRONE_TAG trigger: event: - tag volumes: - name: docker host: path: /var/run/docker.sock - name: maven-cache host: path: /data/cache/tl/api