apiVersion: extensions/v1beta1 kind: Deployment metadata: name: dancefinder-app labels: app: dancefinder-app annotations: kubernetes.io/change-cause: "${TIMESTAMP} Deployed commit id: ${COMMIT}" spec: replicas: 1 strategy: type: RollingUpdate rollingUpdate: maxSurge: 1 maxUnavailable: 1 minReadySeconds: 30 selector: matchLabels: app: dancefinder-app template: metadata: labels: app: dancefinder-app spec: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 100 podAffinityTerm: labelSelector: matchExpressions: - key: "app" operator: In values: - dancefinder-app topologyKey: kubernetes.io/hostname containers: - name: dancefinder-app readinessProbe: httpGet: path: /health port: 80 initialDelaySeconds: 5 periodSeconds: 5 timeoutSeconds: 5 imagePullPolicy: Always image: registry.gitlab.com/unboundsoftware/dancefinder/dancefinder-app:${COMMIT} ports: - containerPort: 80 --- apiVersion: v1 kind: Service metadata: name: dancefinder-app labels: app: dancefinder-app spec: type: NodePort selector: app: dancefinder-app ports: - port: 80 targetPort: 80