在DeploymentConfiguration中使用OpenShift配置映射

在DeploymentConfiguration中使用OpenShift配置映射,openshift,openshift-origin,openshift-3,Openshift,Openshift Origin,Openshift 3,在OpenShift的ConfigMaps文档中()只是Pods中使用的一个示例。但是我可以在DeploymentConfig中也使用ConfigMaps吗 POD中的参数声明看起来与DeploymentConfig相似 apiVersion: v1 kind: Pod metadata: name: dapi-test-pod spec: containers: - name: test-container image: gcr.io/google_containe

在OpenShift的ConfigMaps文档中()只是Pods中使用的一个示例。但是我可以在DeploymentConfig中也使用ConfigMaps吗

POD中的参数声明看起来与DeploymentConfig相似

apiVersion: v1
kind: Pod
metadata:
  name: dapi-test-pod
spec:
  containers:
    - name: test-container
      image: gcr.io/google_containers/busybox
      command: [ "/bin/sh", "-c", "env" ]
      env:
        - name: SPECIAL_LEVEL_KEY
          valueFrom:
            configMapKeyRef:
              name: special-config
              key: special.how
        - name: SPECIAL_TYPE_KEY
          valueFrom:
            configMapKeyRef:
              name: special-config
              key: special.type
  restartPolicy: Never
两者都使用
env
属性

"spec": {
                        "containers": [
                            {
                                "env": [
                                    {
                                        "name": "PORT",
                                        "value": "${MF-PORT}"
                                    },
                                    {
                                        "name": "NODE_ENV",
                                        "value": "${MF-ENVIRONMENT}"
                                    }
                                ],

是的,您可以从部署配置中使用
ConfigMap

如果已经部署了应用程序,则可以添加环境变量,并使用以下命令从配置映射中设置环境变量:

oc set env dc/blog --from configmap/blog-settings
通过运行以下命令,您可以看到这如何转化为部署配置中的更改:

oc set env dc/blog --from configmap/blog-settings --dry-run -o json
例如,如果最初使用以下方法创建配置映射:

oc create configmap blog-settings \
      --from-literal BLOG_BANNER_COLOR=blue \
      --from-literal BLOG_SITE_NAME="My Blog"
这将导致以下的部署配置发生更改:

                "env": [
                    {
                        "name": "BLOG_BANNER_COLOR",
                        "valueFrom": {
                            "configMapKeyRef": {
                                "name": "blog-settings",
                                "key": "BLOG_BANNER_COLOR"
                            }
                        }
                    },
                    {
                        "name": "BLOG_SITE_NAME",
                        "valueFrom": {
                            "configMapKeyRef": {
                                "name": "blog-settings",
                                "key": "BLOG_SITE_NAME"
                            }
                        }
                    }
                ],
您可以在OpenShift上的免费电子书中找到有关使用配置映射和机密的详细信息,网址为:


是的,您可以从部署配置中使用
ConfigMap

如果已经部署了应用程序,则可以添加环境变量,并使用以下命令从配置映射中设置环境变量:

oc set env dc/blog --from configmap/blog-settings
通过运行以下命令,您可以看到这如何转化为部署配置中的更改:

oc set env dc/blog --from configmap/blog-settings --dry-run -o json
例如,如果最初使用以下方法创建配置映射:

oc create configmap blog-settings \
      --from-literal BLOG_BANNER_COLOR=blue \
      --from-literal BLOG_SITE_NAME="My Blog"
这将导致以下的部署配置发生更改:

                "env": [
                    {
                        "name": "BLOG_BANNER_COLOR",
                        "valueFrom": {
                            "configMapKeyRef": {
                                "name": "blog-settings",
                                "key": "BLOG_BANNER_COLOR"
                            }
                        }
                    },
                    {
                        "name": "BLOG_SITE_NAME",
                        "valueFrom": {
                            "configMapKeyRef": {
                                "name": "blog-settings",
                                "key": "BLOG_SITE_NAME"
                            }
                        }
                    }
                ],
您可以在OpenShift上的免费电子书中找到有关使用配置映射和机密的详细信息,网址为: