apiVersion: apps/v1beta2 kind: Deployment metadata: name: {PROJECT_NAME}-{IMAGE_NAME}-{ENV} namespace: {PROJECT_NAME}-{ENV} labels: project: {PROJECT_NAME}-{ENV} app: {PROJECT_NAME}-{IMAGE_NAME}-{ENV} spec: replicas: {REPLICAS} selector: matchLabels: project: {PROJECT_NAME}-{ENV} app: {PROJECT_NAME}-{IMAGE_NAME}-{ENV} template: metadata: labels: project: {PROJECT_NAME}-{ENV} app: {PROJECT_NAME}-{IMAGE_NAME}-{ENV} spec: imagePullSecrets: - name: harbor-pwd containers: - name: {PROJECT_NAME}-{IMAGE_NAME}-{ENV} image: reg.bjrrtx.com:5000/{PROJECT_NAME}/{IMAGE_NAME}-{ENV}:v{BUILD_NUMBER} imagePullPolicy: Always env: - name: MY_POD_IP valueFrom: fieldRef: fieldPath: status.podIP - name: JAVA_OPTS value: {JVM_OPTS} - name: SPRING_PROFILES_ACTIVE value: {ENV} ports: - containerPort: {CONTAINER_PORT} resources: limits: cpu: {CPU}m memory: {MEMORY}Mi requests: cpu: {CPU}m memory: {MEMORY}Mi --- apiVersion: v1 kind: Service metadata: labels: app: {PROJECT_NAME}-{IMAGE_NAME}-{ENV} name: {PROJECT_NAME}-{IMAGE_NAME}-{ENV} namespace: {PROJECT_NAME}-{ENV} annotations: project: '{PROJECT_NAME}-{ENV}' app: '{PROJECT_NAME}-{IMAGE_NAME}-{ENV}' spec: ports: - name: web port: {CONTAINER_PORT} nodePort: {NODE_PORT} targetPort: {CONTAINER_PORT} type: NodePort selector: project: {PROJECT_NAME}-{ENV} app: {PROJECT_NAME}-{IMAGE_NAME}-{ENV}