OpenShift DeploymentConfig Definition

From NovaOrdis Knowledge Base
Revision as of 20:46, 28 February 2018 by Ovidiu (talk | contribs) (→‎template)
Jump to navigation Jump to search

External

Internal

Definition

apiVersion: v1

kind:       DeploymentConfig

metadata: 
            name: blue

            labels: {...}
  
spec: 
            replicas: 1

            selector: 

                      pod_selector_label_name_1:  pod_selector_value_1
                      pod_selector_label_name_2:  pod_selector_value_2

            strategy: 
                      type: Recreate

            template: 

                      metadata: 

                              annotations: 

                                  arbitrary-key-1: arbitrary-value-1
 
                              labels: 

                                  pod_selector_label_name_1:  pod_selector_value_1
                                  pod_selector_label_name_2:  pod_selector_value_2

                      spec: 
                           containers:  

                                        - name: blue

                                          image: 

                                          imagePullPolicy: Always

                                          env:
                                          - name: TEST_ENV1
                                            value: TEST_VALUE1

                                          ports:
                                                 - containerPort: 1234
                                                   protocol: TCP
                                          volumeMounts:
                                                 - name: data
                                                   mountPath: /opt/blue/data
                                                 - name: config
                                                   mountPath: /etc/blue/conf
                                          livenessProbe: {...}
                                          readinessProbe: {...}
                                          terminationMessagePath: /dev/termination-log
                                          resources: {...}

                           dnsPolicy: ClusterFirst
                           restartPolicy: Always
                           securityContext: {...}
                           terminationGracePeriodSeconds: 30
                           volumes:  
                                   - name: data
                                     persistentVolumeClaim:
                                       claimName: data-pvc
                                   - name: config
                                     configMap:
                                       name: config-cm
                                       items:
                                         - key: app.ini
                                           path: app.ini
            triggers: 
                     - type: ConfigChange
                     - type: ImageChange
                       imageChangeParams:
                         from:
                           kind: ImageStreamTag
                           name: gogs:0.11.29

status: {...}

Elements

spec

selector

Represents a query that applied over pods, returns the number of pods which should match the "replica" count. This is the query used by the replication controller to figure out whether it has to spin up or shut down pods. The labels specified in the "spec.selector" map must match the labels applied to the pods created by this deployment configuration, which are the "spec.template.metadata.labels". More details: https://docs.openshift.com/container-platform/latest/rest_api/openshift_v1.html#v1-deploymentconfigspec

template

Template:OpenShift Pod Definition


imagePullPolicy

"Always"

Also see:

Create an Individual Image Stream with import-image