阿里云首页 弹性容器实例

挂载ConfigMap

本文介绍如何为ECI实例挂载ConfigMap,将ConfigMap中的配置项挂载到了容器内。

前提条件

K8s集群中已正确部署Virtual kubelet(VK)。

说明

阿里云ASK集群已默认集成VK,其它集群需要您自行部署VK。更多信息,请参见对接概述

配置示例

您可以像使用原生K8s一样为ECI实例挂载ConfigMap。配置示例如下:

  1. 创建ConfigMap。

    kubectl create configmap demo --from-literal=test=configmap

    创建成功后,执行以下命令查看ConfigMap的配置信息:

    kubectl get configmap demo -o yaml

    预期返回结果如下:

    apiVersion: v1
    data:
      test: configmap
    kind: ConfigMap
    metadata:
      creationTimestamp: "2020-01-20T12:54:42Z"
      name: demo
      namespace: default
      resourceVersion: "15340926"
      selfLink: /api/v1/namespaces/default/configmaps/demo
      uid: 07119167-3b84-11ea-8c0c-4ac7cb9a****
  2. 准备挂载ConfigMap的YAML配置文件。

    vim test-configmap.yaml

    test-configmap.yaml的内容示例如下:

    apiVersion: v1
    kind: Pod
    metadata:
      name: test-configmap
      labels: 
        alibabacloud.com/eci: "true"   
    spec:
      containers:
        - name: nginx
          image: nginx:latest
          volumeMounts:
          - name: config-volume
            mountPath: /cache-test
      volumes:
        - name: config-volume
          configMap:
            name: demo
            items:
            - key: test
              path: keys
      restartPolicy: Always
  3. 部署Pod。

    kubectl create -f test-configmap.yaml
  4. 查看挂载结果。

    使用ls命令查看Pod内的文件目录,可以看到ConfigMap中的配置项已经挂载到了容器内。

    挂载ConfigMap