magic-daily-job-server.yaml 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. apiVersion: apps/v1
  2. kind: Deployment
  3. metadata:
  4. labels:
  5. app: magic-daily-job
  6. name: magic-daily-job
  7. namespace: magic
  8. spec:
  9. progressDeadlineSeconds: 600
  10. replicas: 1
  11. revisionHistoryLimit: 10
  12. selector:
  13. matchLabels:
  14. app: magic-daily-job
  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-daily-job
  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: ["dailyJob"]
  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-daily-job
  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-daily-job-config
  101. name: config
  102. ---
  103. apiVersion: v1
  104. kind: ConfigMap
  105. metadata:
  106. name: magic-daily-job-config
  107. namespace: magic
  108. data:
  109. app.json: |-
  110. {
  111. "api_addr": 8090,
  112. "job_addr": 8090,
  113. "mod": "test",
  114. "router_prefix": ""
  115. }
  116. config.test.json: |-
  117. {
  118. "exchange": {
  119. "root_url": "https://www.coinvex.one",
  120. "appid": "2hhaivhKhb7Q",
  121. "secret": "m6iITfTEsMVHRqCxVj4GLqmY2KFuG4Mh",
  122. "redirect_url": "http://127.0.0.1:5173/login",
  123. "callback_url": "http://127.0.0.1:5173/callback"
  124. },
  125. "jwt": {
  126. "signing-key": "magic!@#¥Secret",
  127. "expires-time": 24,
  128. "issuer": "app"
  129. },
  130. "mysql": {
  131. "prefix": "",
  132. "port": "3306",
  133. "config": "charset=utf8mb4\u0026parseTime=True\u0026loc=Local",
  134. "db-name": "magic",
  135. "username": "magic_rw",
  136. "password": "uStGqJvd4Ura4YLhpQ",
  137. "path": "coinvex-mysql-vexnode-test.cluster-cbgwq2qs2ozz.ap-southeast-1.rds.amazonaws.com:3358",
  138. "engine": "",
  139. "log-mode": "error",
  140. "max-idle-conns": 10,
  141. "max-open-conns": 10,
  142. "singular": false,
  143. "log-zap": false
  144. },
  145. "redis": {
  146. "addr": "clustercfg.coinvex-redis-vexnode-test.h3ywp2.apse1.cache.amazonaws.com:6379",
  147. "password": "6D7AbG8mTjFjVRgg",
  148. "db": 0,
  149. "enabledTls": true,
  150. "enabledCluster": true,
  151. "cluster": [
  152. "clustercfg.coinvex-redis-vexnode-test.h3ywp2.apse1.cache.amazonaws.com:6379",
  153. "clustercfg.coinvex-redis-vexnode-test.h3ywp2.apse1.cache.amazonaws.com:6379"
  154. ]
  155. },
  156. "zap": {
  157. "tag_name": "app",
  158. "level": "debug",
  159. "prefix": "APP_",
  160. "format": "_json",
  161. "director": "logs",
  162. "encode_level": "LowercaseLevelEncoder",
  163. "stacktrace_key": "error",
  164. "max_age": 10,
  165. "rotation_size": 100,
  166. "rotation_count": 10,
  167. "show_line": true,
  168. "log_in_console": true,
  169. "log_output_file": true
  170. }
  171. }