apiVersion: apps/v1 kind: Deployment metadata: labels: name: LABEL name: RESOURCE_NAME namespace: production spec: replicas: 1 selector: matchLabels: app: RESOURCE_NAME strategy: type: RollingUpdate rollingUpdate: maxSurge: 25% maxUnavailable: 0 template: metadata: labels: app: RESOURCE_NAME spec: containers: - image: REPOSITORY/IMAGE name: RESOURCE_NAME env: - name: KUBERNETES_NAMESPACE valueFrom: fieldRef: fieldPath: metadata.namespace - name: CONTAINER_CORE_LIMIT valueFrom: resourceFieldRef: resource: limits.cpu - name: CONTAINER_MAX_MEMORY valueFrom: resourceFieldRef: resource: limits.memory - name: JDBC_URL valueFrom: secretKeyRef: name: jdbc key: jdbc.url - name: JDBC_USERNAME valueFrom: secretKeyRef: name: jdbc key: jdbc.username - name: JDBC_PASSWORD valueFrom: secretKeyRef: name: jdbc key: jdbc.password ports: - containerPort: 9090 name: RESOURCE_NAME # readinessProbe: # httpGet: # path: / # port: 9090 # timeoutSeconds: 2 # successThreshold: 2 # failureThreshold: 2 imagePullPolicy: Always resources: requests: cpu: 0.25 memory: 128Mi limits: cpu: 0.5 memory: 256Mi restartPolicy: Always imagePullSecrets: - name: $KUBERNETES_SECRET_NAME