ConfigMap和Secret几乎同样,只是Secret会用base64加密,建立方式也能够彩yaml或者文件方式
下面演示一下经过文件建立configmap
建立配置文件my.yamlubuntu
name: chenqionghe light.weight: baby gym: muscle
经过文件建立ConfigMapapi
kubectl create configmap my-config --from-file=./my.yaml
查看configmap对象app
root@VM-0-8-ubuntu:/home/ubuntu# kubectl get configmaps my-config -o yaml apiVersion: v1 data: my.yaml: | name: chenqionghe light.weight: baby gym: muscle kind: ConfigMap metadata: creationTimestamp: 2019-09-27T16:43:53Z name: my-config namespace: default resourceVersion: "2139336" selfLink: /api/v1/namespaces/default/configmaps/my-config uid: fd4aeb09-e145-11e9-8c22-f242c645cfec
建立经过pod使用ConfigMapui
apiVersion: v1 kind: Pod metadata: name: test-configmap spec: containers: - name: test-configmap image: busybox args: - sleep - "86400" volumeMounts: - name: config-volume mountPath: "/app/conf" readOnly: true volumes: - name: config-volume configMap: name: my-config
执行建立pod加密
root@VM-0-8-ubuntu:/home/ubuntu# kubectl apply -f test-config-pod.yaml pod/test-configmap created
查看pod已经建立spa
root@VM-0-8-ubuntu:/home/ubuntu# kubectl get po NAME READY STATUS RESTARTS AGE demo-deployment-555958bc44-llhr9 1/1 Running 0 20d test-configmap 1/1 Running 0 1m
进入pod查看,发现/app/conf已经挂载上了my.yaml文件code
root@VM-0-8-ubuntu:/home/ubuntu# kubectl exec -it test-configmap -- /bin/sh / # ls /app/conf my.yaml / # cat /app/conf/my.yaml name: chenqionghe light.weight: baby gym: muscl