Forráskód Böngészése

添加生产配置

yangliu 2 hónapja
szülő
commit
aba018756c

+ 48 - 3
Jenkinsfile

@@ -3,7 +3,7 @@ pipeline {
 
     parameters {
         choice(name: 'env', choices: ['dev', 'test', 'prod'], description: '部署环境(dev/test/prod)')
-        string(name: 'NAMESPACE', defaultValue: 'hfln-dev', description: 'Kubernetes 命名空间')
+        string(name: 'NAMESPACE', defaultValue: 'gateway', description: 'Kubernetes 命名空间')
     }
 
     environment {
@@ -57,11 +57,56 @@ pipeline {
                 script {
                     def imageTag = "${HARBOR_HOST}/${params.env}/${PROJECT_NAME}:${BUILD_NUMBER}"
                     echo ">>> 部署到 Kubernetes,命名空间:${params.NAMESPACE}"
+
                     sh """
                         export KUBECONFIG=${KUBECONFIG_PATH}
-                        kubectl set image deployment/${PROJECT_NAME} ${PROJECT_NAME}=${imageTag} -n ${params.NAMESPACE}
+
+                        # 创建命名空间(如果不存在)
+                        kubectl get ns ${params.NAMESPACE} || kubectl create ns ${params.NAMESPACE}
+
+                        # 应用 Deployment(2 副本)
+                        kubectl apply -n ${params.NAMESPACE} -f - <<EOF
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: ${PROJECT_NAME}
+spec:
+  replicas: 2
+  selector:
+    matchLabels:
+      app: ${PROJECT_NAME}
+  template:
+    metadata:
+      labels:
+        app: ${PROJECT_NAME}
+    spec:
+      containers:
+      - name: ${PROJECT_NAME}
+        image: ${imageTag}
+        ports:
+        - containerPort: 8080
+        env:
+        - name: SPRING_PROFILES_ACTIVE
+          value: "${params.env}"
+EOF
+
+                        # 应用 NodePort Service(暴露端口为 30082)
+                        kubectl apply -n ${params.NAMESPACE} -f - <<EOF
+apiVersion: v1
+kind: Service
+metadata:
+  name: ${PROJECT_NAME}
+spec:
+  type: NodePort
+  selector:
+    app: ${PROJECT_NAME}
+  ports:
+  - port: 80
+    targetPort: 8080
+    nodePort: 30082
+EOF
                     """
-                    echo ">>> 部署完成 ✅"
+                    echo ">>> 部署完成 ✅,请访问:http://8.130.28.21:30082/"
                 }
             }
         }

+ 0 - 30
knife4j-doc-spring-boot-starter/src/main/resources/application.yml

@@ -1,30 +0,0 @@
-spring:
-  mvc:
-    pathmatch:
-      matching-strategy: ANT_PATH_MATCHER
-
-springdoc:
-  swagger-ui:
-    path: /swagger-ui.html
-  api-docs:
-    path: /v3/api-docs
-  group-configs:
-    - group: 'default'
-      paths-to-match: '/**'
-      packages-to-scan: ${lnxx.knife4j.doc.base-package}
-
-knife4j:
-  enable: true
-  setting:
-    language: zh-CN
-    enable-swagger-models: true
-    enable-document-manage: true
-    swagger-model-name: 实体类列表
-    enable-version: false
-    enable-reload-cache-parameter: false
-    enable-after-script: true
-    enable-filter-multipart-api-method-type: POST
-    enable-filter-multipart-apis: false
-    enable-request-cache: true
-    enable-host: false
-    enable-host-text: 

+ 19 - 30
src/main/resources/application-prod.yml

@@ -2,36 +2,25 @@ spring:
   cloud:
     nacos:
       discovery:
-        server-addr: node01:8848
+        server-addr: 47.121.135.46:8848
         group: DEFAULT_GROUP
-        namespace: public
+        namespace: prod
       config:
-        server-addr: ${spring.cloud.nacos.discovery.server-addr}
-        group: ${spring.cloud.nacos.discovery.group}
-        namespace: ${spring.cloud.nacos.discovery.namespace}
+        server-addr: 47.121.135.46:8848
+        group: DEFAULT_GROUP
+        namespace: prod
         file-extension: yaml
-#  redis:
-#    # 地址
-#    host: node04
-#    # 端口
-#    port: 6379
-#    # 数据库索引
-#    database: 5
-#    # 密码
-#    password: Wideth@123
-#    # 连接超时时间
-#    timeout: 10s
-#    lettuce:
-#      pool:
-#        # 连接池中的最小空闲连接
-#        min-idle: 0
-#        # 连接池中的最大空闲连接
-#        max-idle: 8
-#        # 连接池的最大数据库连接数
-#        max-active: 8
-#        # #连接池最大阻塞等待时间(使用负值表示没有限制)
-#        max-wait: -1ms
-security:
-  captcha:
-    enabled: false
-    type: char
+  redis:
+    host: 47.121.135.46
+    port: 6379
+    database: 5
+    timeout: 30s
+    connect-timeout: 10s
+    lettuce:
+      pool:
+        min-idle: 2
+        max-idle: 10
+        max-active: 16
+        max-wait: 5000ms
+      shutdown-timeout: 100ms
+    password: Hfln@1024

+ 2 - 2
src/main/resources/application.yml

@@ -2,7 +2,7 @@ server:
   port: 8090
 spring:
   profiles:
-    active: local
+    active: prod
   application:
     name: hfln-interior-gateway
   cloud:
@@ -23,7 +23,7 @@ spring:
 lnxx:
   knife4j:
     doc:
-      enable: false
+      enable: true
       title: "微服务 API 文档聚合"
       description: "统一管理所有微服务的 API 文档"
       version: "1.0.0"