apiVersion: apps/v1 kind: Deployment metadata: name: {{ deployment_name }} namespace: {{ namespace }} spec: replicas: {{ replicas }} selector: matchLabels: app: {{ deployment_name }} template: metadata: labels: app: {{ deployment_name }} spec: containers: - name: {{ deployment_name }} image: {{ image }} imagePullPolicy: IfNotPresent resources: limits: cpu: {{ limits_cpu }} memory: {{ limits_memory }} requests: cpu: {{ requests_cpu }} memory: {{ requests_memory }} ports: - containerPort: 80 protocol: TCP livenessProbe: failureThreshold: 3 initialDelaySeconds: 30 periodSeconds: 10 successThreshold: 1 tcpSocket: port: 80 timeoutSeconds: 1 volumeMounts: - mountPath: /etc/localtime name: localtime - mountPath: /usr/local/nginx/conf/nginx.conf name: nginx subPath: nginx.conf - mountPath: /usr/local/nginx/conf/conf.d/{{ deployment_name }}.conf name: {{ deployment_name }} subPath: {{ deployment_name }}.conf imagePullSecrets: - name: {{ imageSecret }} volumes: - hostPath: path: /etc/localtime type: '' name: localtime - configMap: defaultMode: 420 name: nginx name: nginx - configMap: defaultMode: 420 name: configmap-{{ deployment_name }} name: {{ deployment_name }} --- apiVersion: v1 kind: Service metadata: name: {{ deployment_name }} namespace: {{ namespace }} spec: ports: - name: server-port port: 80 targetPort: 80 selector: app: {{ deployment_name }} type: ClusterIP --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: {{ deployment_name }} namespace: {{ namespace }} spec: ingressClassName: {{ ingressClassName }} rules: - host: {{ superDomain }} http: paths: - backend: service: name: {{ deployment_name }} port: number: 80 path: /nginx01 pathType: ImplementationSpecific