deploy.yaml 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. ---
  2. apiVersion: apps.kruise.io/v1beta1
  3. #apiVersion: apps/v1
  4. kind: StatefulSet
  5. metadata:
  6. name: duanju-miniprogram-api
  7. namespace: duanju
  8. labels:
  9. app: duanju-miniprogram-api
  10. spec:
  11. serviceName: duanju-miniprogram-api
  12. replicas: 2
  13. selector:
  14. matchLabels:
  15. app: duanju-miniprogram-api
  16. template:
  17. metadata:
  18. labels:
  19. app: duanju-miniprogram-api
  20. spec:
  21. readinessGates:
  22. - conditionType: InPlaceUpdateReady
  23. terminationGracePeriodSeconds: 30
  24. dnsPolicy: "None"
  25. dnsConfig:
  26. nameservers:
  27. - 223.5.5.5
  28. - 10.26.22.50
  29. searches:
  30. - pro.svc.cluster.local
  31. - svc.cluster.local
  32. - cluster.local
  33. options:
  34. - name: ndots
  35. value: "5"
  36. initContainers:
  37. - name: init
  38. image: hub.evbj.easou.com/dev/busybox
  39. command: ['sh', "-c", 'chmod 777 -R /data && mkdir -p /data/project && mkdir -p /data/log']
  40. imagePullPolicy: IfNotPresent
  41. volumeMounts:
  42. - name: volume
  43. mountPath: /data
  44. - name: init-package
  45. image: hub.evbj.easou.com/dev/busybox
  46. command: ['sh', '-c', 'rm -rf /data/project/* && wget http://10.40.20.61/release/app-web/prod-64/duanju-miniprogram-api/1.0.6/duanju-miniprogram-api_1.0.6_loginOptimize_T1.0.4-191862_1.0.6_20231206-153205_RBL/ROOT.war -O /data/project/ROOT.war && md5sum /data/project/ROOT.war']
  47. imagePullPolicy: IfNotPresent
  48. volumeMounts:
  49. - name: volume
  50. mountPath: /data
  51. containers:
  52. - name: duanju-miniprogram-api
  53. image: hub.evbj.easou.com/dev/book-webview:v3.1base
  54. imagePullPolicy: Always
  55. ports:
  56. - containerPort: 8080
  57. name: port
  58. lifecycle:
  59. preStop:
  60. exec:
  61. command: ["/bin/sh","-c","supervisorctl stop all"]
  62. volumeMounts:
  63. - name: volume
  64. mountPath: /data
  65. livenessProbe:
  66. tcpSocket:
  67. port: 8080
  68. initialDelaySeconds: 45
  69. periodSeconds: 15
  70. readinessProbe:
  71. tcpSocket:
  72. port: 8080
  73. initialDelaySeconds: 45
  74. periodSeconds: 15
  75. updateStrategy:
  76. type: RollingUpdate
  77. rollingUpdate:
  78. podUpdatePolicy: InPlaceIfPossible
  79. inPlaceUpdateStrategy:
  80. gracePeriodSeconds: 10
  81. volumeClaimTemplates:
  82. - metadata:
  83. name: volume
  84. spec:
  85. accessModes: ["ReadWriteOnce"]
  86. storageClassName: rbd
  87. resources:
  88. requests:
  89. storage: 200Gi
  90. ---
  91. apiVersion: v1
  92. kind: Service
  93. metadata:
  94. name: duanju-miniprogram-api-svc
  95. namespace: duanju
  96. labels:
  97. app: duanju-miniprogram-api-svc
  98. spec:
  99. type: NodePort
  100. ports:
  101. - port: 8080
  102. targetPort: 8080
  103. nodePort: 30200
  104. selector:
  105. app: duanju-miniprogram-api
  106. ---
  107. apiVersion: networking.k8s.io/v1
  108. kind: Ingress
  109. metadata:
  110. name: duanju-miniprogram-api-ingress
  111. namespace: duanju
  112. spec:
  113. #tls:
  114. # - hosts:
  115. # - dev-book-webview.ieasou.cn
  116. # secretName: ieasou.cn
  117. rules:
  118. - host: duanju-miniprogram-api-duanju-miniprogram-api.ieasou.cn
  119. http:
  120. paths:
  121. - path: /
  122. pathType: Prefix
  123. backend:
  124. service:
  125. name: duanju-miniprogram-api-svc
  126. port:
  127. number: 8080
  128. ingressClassName: nginx