2.4、深入pod-configMap

1、 創(chuàng)建configMap

1.1 yaml文件方式

太長(zhǎng),詳見此

創(chuàng)建命令
kubectl create -f cm-appconfigfiles.yaml 

1.2 命令行方式

kubectl create cm cm_test --from-literal=k1=v1

1.3 pod通過環(huán)境變量使用cm

apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-appvars
data:
  appLogLevel: info
  appDataDir: /var/data

創(chuàng)建個(gè)容器使用cm

apiVersion: v1
kind: Pod
metadata:
  name: cm-test-pod
spec:
  containers:
  - name: cm-test-container
    image: busybox
    command: ["/bin/sh", "-c", "env | grep APP"]
    env:
    - name: APPLOGLEVEL
      valueFrom:
        configMapKeyRef:
          name: cm-appvars
          key: appLogLevel
    - name: APPDATADIR
      valueFrom:
        configMapKeyRef:
          name: cm-appvars
          key: appDataDir

1.4 通過volumeMount方式使用

apiVersion: v1
kind: Pod
metadata:
  name: cm-test-app
spec:
  containers:
  - name: cm-test-app
    image: kubeguide/tomcat-app:v1
    ports:
    - containerPort: 80
    volumeMounts:
    - name: v-serverxml #引用的volume名
      mountPath: /configs
  volumes:
  - name: v-serverxml
    configMap:
      name: cm-appconfigfiles #使用這個(gè)名字的cm
      items:
      - key: key-svr-xml
        path: server.xml
      - key: key-log4j-pro
        path: logging.properties

登陸容器,看/configs目錄下是否有2個(gè)文件server.xml和logging.properties

kubectl exec -it cm-test-app -- bash
cd /configs
ls -l
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容