magic-adi-server.yaml 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. apiVersion: apps/v1
  2. kind: Deployment
  3. metadata:
  4. labels:
  5. app: magic-adi
  6. name: magic-adi
  7. namespace: magic
  8. spec:
  9. progressDeadlineSeconds: 600
  10. replicas: 1
  11. revisionHistoryLimit: 10
  12. selector:
  13. matchLabels:
  14. app: magic-adi
  15. strategy:
  16. rollingUpdate:
  17. maxSurge: 25%
  18. maxUnavailable: 25%
  19. type: RollingUpdate
  20. template:
  21. metadata:
  22. creationTimestamp: null
  23. labels:
  24. app: magic-adi
  25. spec:
  26. containers:
  27. - env:
  28. - name: POD_NAME
  29. valueFrom:
  30. fieldRef:
  31. apiVersion: v1
  32. fieldPath: metadata.name
  33. - name: POD_NAMESPACE
  34. valueFrom:
  35. fieldRef:
  36. apiVersion: v1
  37. fieldPath: metadata.namespace
  38. args: ["api"]
  39. image: 654654279104.dkr.ecr.ap-southeast-1.amazonaws.com/jcwork-test:tide-api-8f4ca0ab-117
  40. imagePullPolicy: Always
  41. lifecycle:
  42. preStop:
  43. exec:
  44. command:
  45. - /bin/bash
  46. - -c
  47. - sleep 20
  48. livenessProbe:
  49. failureThreshold: 3
  50. httpGet:
  51. path: /health/liveness
  52. port: 8090
  53. scheme: HTTP
  54. initialDelaySeconds: 30
  55. periodSeconds: 10
  56. successThreshold: 1
  57. timeoutSeconds: 10
  58. name: magic-adi
  59. ports:
  60. - containerPort: 8090
  61. protocol: TCP
  62. readinessProbe:
  63. failureThreshold: 3
  64. httpGet:
  65. path: /health/readiness
  66. port: 8090
  67. scheme: HTTP
  68. initialDelaySeconds: 30
  69. periodSeconds: 10
  70. successThreshold: 1
  71. timeoutSeconds: 10
  72. resources:
  73. limits:
  74. cpu: "1"
  75. memory: 2Gi
  76. requests:
  77. cpu: 50m
  78. memory: 500Mi
  79. terminationMessagePath: /dev/termination-log
  80. terminationMessagePolicy: File
  81. volumeMounts:
  82. - mountPath: /app/conf.d/app.json
  83. name: config
  84. readOnly: true
  85. subPath: app.json
  86. - mountPath: /app/conf.d/config.test.json
  87. name: config
  88. readOnly: true
  89. subPath: config.test.json
  90. dnsPolicy: ClusterFirst
  91. imagePullSecrets:
  92. - name: dockersecret
  93. restartPolicy: Always
  94. schedulerName: default-scheduler
  95. securityContext: {}
  96. terminationGracePeriodSeconds: 30
  97. volumes:
  98. - configMap:
  99. defaultMode: 384
  100. name: magic-adi-config
  101. name: config
  102. ---
  103. apiVersion: v1
  104. kind: ConfigMap
  105. metadata:
  106. name: magic-adi-config
  107. namespace: magic
  108. data:
  109. app.json: |-
  110. {
  111. "addr": 8090,
  112. "mod": "test",
  113. "proxy-url": "http://magic-api:8090",
  114. "router_prefix": ""
  115. }
  116. config.test.json: |-
  117. {
  118. "biz-list": [
  119. {
  120. "alias-name": "app",
  121. "proxy-url": "http://127.0.0.1:2001",
  122. "proxy-alias": "app",
  123. "prefix": "",
  124. "port": "3358",
  125. "config": "charset=utf8mb4\u0026parseTime=True\u0026loc=Local",
  126. "db-name": "magic",
  127. "username": "magic_rw",
  128. "password": "uStGqJvd4Ura4YLhpQ",
  129. "path": "coinvex-mysql-vexnode-test.cluster-cbgwq2qs2ozz.ap-southeast-1.rds.amazonaws.com",
  130. "engine": "",
  131. "log-mode": "error",
  132. "max-idle-conns": 10,
  133. "max-open-conns": 10,
  134. "singular": false,
  135. "log-zap": false
  136. }
  137. ],
  138. "file": {
  139. "oss-type": "local",
  140. "path": "http://baseUrl:2002",
  141. "proxy-path": "/admin/api/static",
  142. "store-path": "./static",
  143. "origin-conf": {
  144. "access-key-id": "LTAI5tHwrKhv2sd927cXYoRw",
  145. "access-key-secret": "9TezWQUvvXGvucUdXXFMNaIGjwmusa",
  146. "base-path": "magic",
  147. "bucket-name": "oss-sgp-prd-fomo-1",
  148. "bucket-url": "https://oss-sgp-prd-fomo-1.oss-ap-southeast-1.aliyuncs.com",
  149. "endpoint": "oss-ap-southeast-1.aliyuncs.com"
  150. }
  151. },
  152. "jwt": {
  153. "signing-key": "app.!@#$1234",
  154. "expires-time": 24,
  155. "issuer": "appTemp"
  156. },
  157. "mysql": {
  158. "prefix": "",
  159. "port": "3358",
  160. "config": "charset=utf8mb4\u0026parseTime=True\u0026loc=Local",
  161. "db-name": "magic_admin",
  162. "username": "magic_rw",
  163. "password": "uStGqJvd4Ura4YLhpQ",
  164. "path": "coinvex-mysql-vexnode-test.cluster-cbgwq2qs2ozz.ap-southeast-1.rds.amazonaws.com",
  165. "engine": "",
  166. "log-mode": "error",
  167. "max-idle-conns": 10,
  168. "max-open-conns": 10,
  169. "singular": false,
  170. "log-zap": false
  171. },
  172. "redis": {
  173. "addr": "clustercfg.coinvex-redis-vexnode-test.h3ywp2.apse1.cache.amazonaws.com:6379",
  174. "password": "6D7AbG8mTjFjVRgg",
  175. "db": 0,
  176. "enabledTls": true,
  177. "enabledCluster": true,
  178. "cluster": [
  179. "clustercfg.coinvex-redis-vexnode-test.h3ywp2.apse1.cache.amazonaws.com:6379",
  180. "clustercfg.coinvex-redis-vexnode-test.h3ywp2.apse1.cache.amazonaws.com:6379"
  181. ]
  182. },
  183. "sts-oss": {
  184. "ACCESS_KEY_ID": "LTAI5tHwrKhv2sd927cXYoRw",
  185. "ACCESS_KEY_SECRET": "9TezWQUvvXGvucUdXXFMNaIGjwmusa",
  186. "BUCKET_NAME": "oss-sgp-prd-fomo-1",
  187. "BUCKET_URL": "oss-sgp-prd-fomo-1.oss-ap-southeast-1.aliyuncs.com",
  188. "BASE_PATH": "magic",
  189. "STS_ENDPOINT": "sts.ap-southeast-1.aliyuncs.com",
  190. "STS_DURATION_SECONDS": 1200,
  191. "STS_ROLE_SESSION_NAME": "fomo-sts",
  192. "STS_ROLE_ARN": "acs:ram::5796137199632408:role/fomo-sts",
  193. "STS_REGION": "oss-ap-southeast-1"
  194. },
  195. "zap": {
  196. "tag_name": "app",
  197. "level": "debug",
  198. "prefix": "AMS_",
  199. "format": "json",
  200. "director": "logs",
  201. "encode_level": "LowercaseLevelEncoder",
  202. "stacktrace_key": "error",
  203. "max_age": 3,
  204. "rotation_size": 100,
  205. "rotation_count": 3,
  206. "show_line": true,
  207. "log_in_console": true,
  208. "log_output_file": true
  209. }
  210. }