| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- kind: pipeline
- type: docker
- name: test-pipeline
- clone:
- disable: true
- steps:
- # 克隆代码
- - name: clone
- image: drone/git:1.2.1
- # 构建 jar 包
- - name: maven-build
- image: maven:3.8-openjdk-17
- volumes:
- - name: maven-cache
- path: /root/.m2
- - name: build-output
- path: /app/build
- commands:
- - mvn clean package -P prod
- - mkdir -p /app/build/output
- # 复制构建物到 output 目录
- - cp target/test.jar /app/build/output/
- - cp Dockerfile /app/build/output/
- - cp docker-compose.yml /app/build/output/
- - ls -lh /app/build/output # 调试,确保文件存在
- # 上传到服务器
- - name: scp-upload
- image: appleboy/drone-scp:1.8.0
- settings:
- host:
- from_secret: ssh_host
- username:
- from_secret: ssh_user
- password:
- from_secret: ssh_pwd
- port: 22
- command_timeout: 5m
- source:
- source:
- - /app/build/target/test.jar
- target: /home/app/
- # 部署服务
- - name: deploy
- image: appleboy/drone-ssh:1.6.4
- settings:
- host:
- from_secret: ssh_host
- username:
- from_secret: ssh_user
- password:
- from_secret: ssh_pwd
- port: 22
- command_timeout: 5m
- script:
- - cd /home/app
- - docker compose down || true
- - docker compose up -d --build
- - docker ps -a | grep test # 调试,确认容器是否启动
- volumes:
- - name: maven-cache
- host:
- path: /home/mvn/.m2
- - name: build-output
- temp: {}
- trigger:
- branch:
- - master
|