Explorar o código

feat: "修改maven镜像"

Leonezhurui %!s(int64=2) %!d(string=hai) anos
pai
achega
93a113aaa2
Modificáronse 1 ficheiros con 57 adicións e 36 borrados
  1. 57 36
      .drone.yml

+ 57 - 36
.drone.yml

@@ -3,53 +3,74 @@ type: docker
 name: eai-backend
 
 steps:
-  # 步骤 1: Maven 构建
-  - name: build-with-maven
-    image: maven:3.8-openjdk-17-slim
-    volumes:
-      - name: maven-cache
-        path: /root/.m2
-    commands:
-      - mvn clean package -DskipTests
-
-  # 步骤 2: 构建 Docker 镜像并上传
-  - name: build-and-push-docker-image
-    image: plugins/docker
-    settings:
-      username:
-        from_secret: docker-username
-      password:
-        from_secret: docker-password
-      registry: registry.cn-hangzhou.aliyuncs.com
-      repo: registry.cn-hangzhou.aliyuncs.com/english-ai/eai-backend
-      tags: latest
-      dockerfile: Dockerfile
-
-  # 步骤 3: 通过ssh进行部署
-  - name: deploy-with-ssh
+  # 唯一的步骤: 通过SSH在服务器上构建Docker镜像并运行容器
+  - name: build-and-run-on-server
     image: appleboy/drone-ssh
     environment:
+      WORK_DIR: /root/seeai
       CONTAINER_NAME: eai-backend
-      DOCKER_USERNAME:
-        from_secret: docker-username
-      DOCKER_PASSWORD:
-        from_secret: docker-password
-      DOCKER_REGISTRY: registry.cn-hangzhou.aliyuncs.com
-      IMAGE_NAME: english-ai/eai-backend
+      IMAGE_NAME: eai-backend
       IMAGE_TAG: latest
+      JAR_NAME: EAI-Backend-0.0.1-SNAPSHOT.jar
     settings:
       host: 139.196.252.184
       username: root
       password:
         from_secret: server-password
       port: 22
-      envs: [DOCKER_USERNAME,DOCKER_PASSWORD,DOCKER_REGISTRY,CONTAINER_NAME,IMAGE_NAME,IMAGE_TAG]
       script:
-        - echo $DOCKER_PASSWORD | docker login --username $DOCKER_USERNAME --password-stdin $DOCKER_REGISTRY
-        - tag=$DOCKER_REGISTRY/$IMAGE_NAME:$IMAGE_TAG
-        - docker pull $tag
-        - if [ $(docker ps -aq -f name=eai-backend) ]; then docker rm -f eai-backend; fi
-        - docker run -d -p 8070:8080 --name eai-backend -v $(pwd)/logs:/app/logs registry.cn-hangzhou.aliyuncs.com/english-ai/eai-backend
+        - cd $WORK_DIR
+        - docker build -t $IMAGE_NAME:$IMAGE_TAG --build-arg JAR_FILE=$JAR_NAME .
+        - if [ $(docker ps -aq -f name=$CONTAINER_NAME) ]; then docker rm -f $CONTAINER_NAME; fi
+        - docker run -d -p 8070:8080 --name $CONTAINER_NAME -v $(pwd)/logs:/app/logs $IMAGE_NAME:$IMAGE_TAG
+
+#  # 步骤 1: Maven 构建
+#  - name: build-with-maven
+#    image: maven:3.8-openjdk-17-slim
+#    volumes:
+#      - name: maven-cache
+#        path: /root/.m2
+#    commands:
+#      - mvn clean package -DskipTests
+#
+#  # 步骤 2: 构建 Docker 镜像并上传
+#  - name: build-and-push-docker-image
+#    image: plugins/docker
+#    settings:
+#      username:
+#        from_secret: docker-username
+#      password:
+#        from_secret: docker-password
+#      registry: registry.cn-hangzhou.aliyuncs.com
+#      repo: registry.cn-hangzhou.aliyuncs.com/english-ai/eai-backend
+#      tags: latest
+#      dockerfile: Dockerfile
+#
+#  # 步骤 3: 通过ssh进行部署
+#  - name: deploy-with-ssh
+#    image: appleboy/drone-ssh
+#    environment:
+#      CONTAINER_NAME: eai-backend
+#      DOCKER_USERNAME:
+#        from_secret: docker-username
+#      DOCKER_PASSWORD:
+#        from_secret: docker-password
+#      DOCKER_REGISTRY: registry.cn-hangzhou.aliyuncs.com
+#      IMAGE_NAME: english-ai/eai-backend
+#      IMAGE_TAG: latest
+#    settings:
+#      host: 139.196.252.184
+#      username: root
+#      password:
+#        from_secret: server-password
+#      port: 22
+#      envs: [DOCKER_USERNAME,DOCKER_PASSWORD,DOCKER_REGISTRY,CONTAINER_NAME,IMAGE_NAME,IMAGE_TAG]
+#      script:
+#        - echo $DOCKER_PASSWORD | docker login --username $DOCKER_USERNAME --password-stdin $DOCKER_REGISTRY
+#        - tag=$DOCKER_REGISTRY/$IMAGE_NAME:$IMAGE_TAG
+#        - docker pull $tag
+#        - if [ $(docker ps -aq -f name=eai-backend) ]; then docker rm -f eai-backend; fi
+#        - docker run -d -p 8070:8080 --name eai-backend -v $(pwd)/logs:/app/logs registry.cn-hangzhou.aliyuncs.com/english-ai/eai-backend
 
 volumes:
   - name: maven-cache