xiehuanqun 1 tháng trước cách đây
mục cha
commit
7e908daf44
1 tập tin đã thay đổi với 19 bổ sung39 xóa
  1. 19 39
      .drone.yml

+ 19 - 39
.drone.yml

@@ -1,74 +1,54 @@
 kind: pipeline
 type: docker
-name: test-pipeline
+name: default
 
-clone:
-  disable: true
+trigger:
+  branch:
+    - master
 
 steps:
-  # 克隆代码
-  - name: clone
-    image: drone/git:1.2.1
-
-  # 构建 jar 包
-  - name: maven-build
-    image: maven:3.8-openjdk-17
+  # 1. 构建 jar
+  - name: build
+    image: maven:3.8.4
     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   # 调试,确保文件存在
+      # 生成的包默认在 target/test.jar
 
-  # 上传到服务器
-  - name: scp-upload
+  # 2. 传输 jar 到服务器
+  - name: scp
     image: appleboy/drone-scp:1.8.0
     settings:
+      port: 22
       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/
+        - target/test.jar   # ✅ 注意是相对路径
+      target: /home/app/    # 服务器上的目录(要先 mkdir -p /home/app)
 
-  # 部署服务
+  # 3. 部署启动
   - name: deploy
-    image: appleboy/drone-ssh:1.6.4
+    image: appleboy/drone-ssh:1.8.0
     settings:
+      port: 22
       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   # 调试,确认容器是否启动
+        - pkill -f "test.jar" || true   # 停掉旧进程
+        - nohup java -jar test.jar > app.log 2>&1 &
 
 volumes:
   - name: maven-cache
     host:
-      path: /home/mvn/.m2
-  - name: build-output
-    temp: {}
-
-trigger:
-  branch:
-    - master
+      path: /root/docker/maven/cache