蛋蛋星球 后台端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

93 lines
3.0 KiB

  1. kind: Deployment
  2. apiVersion: apps/v1
  3. # 元数据
  4. metadata:
  5. name: egg-admin
  6. namespace: egg
  7. labels:
  8. app: egg-admin
  9. annotations:
  10. kubesphere.io/creator: dengbiao
  11. kubesphere.io/description: egg-admin
  12. # deployment主要部分
  13. spec:
  14. replicas: 1
  15. selector:
  16. matchLabels:
  17. # 名称与上面的labels对应
  18. app: egg-admin
  19. template:
  20. metadata:
  21. labels:
  22. # 名称与上面的matchLabels对应
  23. app: egg-admin
  24. spec:
  25. # 声明挂载卷(将外部已存在的pvc、config等挂载进来)
  26. volumes:
  27. # 用于时区校正
  28. - name: host-time
  29. hostPath:
  30. path: /etc/localtime
  31. type: ''
  32. # 将前面创建的configMap也挂载进来
  33. - name: egg-admin-cfg
  34. configMap:
  35. # 这里的名字就是前面创建的configMap的名字
  36. name: egg-admin-cfg
  37. defaultMode: 420
  38. # pvc
  39. - name: egg-admin # 在该部署中的名称,后面使用改名称挂载
  40. persistentVolumeClaim:
  41. claimName: egg-admin # pvc的名称
  42. # Nginx配置
  43. - name: egg-admin-nginx
  44. configMap:
  45. name: egg-admin-nginx # 外部configMap的名称
  46. items:
  47. - key: go.conf
  48. path: default.conf
  49. containers:
  50. # 主容器
  51. - name: egg-admin-container
  52. # 镜像地址(提前打包好并推送的镜像仓库)
  53. image: 'registry.cn-shenzhen.aliyuncs.com/fnuoos-prd/egg-admin:20241205-01'
  54. envFrom:
  55. - secretRef:
  56. name: alibaba-cloud-credentials
  57. ports:
  58. - name: egg-admin-4010
  59. # 容器端口号(注意与golang web server启动的端口一致)
  60. containerPort: 4010
  61. protocol: TCP
  62. # 将前面volume声明的需要用到的pvc、config挂载上来
  63. volumeMounts:
  64. - name: host-time
  65. readOnly: true
  66. mountPath: /etc/localtime
  67. - name: egg-admin-cfg # 该名字对应前面volumes声明的名字
  68. readOnly: true
  69. # 挂载到容器的哪个路径
  70. mountPath: /var/egg
  71. imagePullPolicy: Always
  72. # Nginx 容器
  73. - name: nginx
  74. image: 'registry.cn-shenzhen.aliyuncs.com/fnuoos-prd/nginx:latest'
  75. ports:
  76. - name: http-80
  77. containerPort: 80
  78. protocol: TCP
  79. volumeMounts:
  80. # 时区校正
  81. - name: host-time
  82. readOnly: true
  83. mountPath: /etc/localtime
  84. # 存储卷 用于存放前端代码
  85. - name: egg-admin # 前面volumes声明的名称
  86. mountPath: /usr/share/nginx/html
  87. - name: egg-admin-nginx # Nginx 配置
  88. readOnly: true
  89. mountPath: /etc/nginx/conf.d/default.conf
  90. subPath: default.conf
  91. restartPolicy: Always
  92. terminationGracePeriodSeconds: 30
  93. dnsPolicy: ClusterFirst