摘要:同的另一個概念類似,區(qū)別是主要用于保存不包含敏感信息的明文字符串。創(chuàng)建方式上述命令行創(chuàng)建了一個名為的鍵值對,為值為接下來我希望用這個為的值來定義成里的一個環(huán)境變量。
顧名思義,ConfigMap用于保存配置數(shù)據的鍵值對,可以用來保存單個屬性,也可以用來保存配置文件。
ConfigMap同Kubernetes的另一個概念secret類似,區(qū)別是ConfigMap主要用于保存不包含敏感信息的明文字符串。
創(chuàng)建方式:
kubectl create configmap special-config --from-literal=i042416=jerry
上述命令行創(chuàng)建了一個名為special-config的鍵值對,
key為i042416, 值為jerry
接下來我希望用這個key為i042416的值"jerry"來定義成pod里的一個環(huán)境變量。
下面是我的yaml文件:
apiVersion: v1
2 kind: Pod
3 metadata:
4 name: jerry-config-pod
5 spec:
6 containers:
7 - name: test-container
8 image: gcr.io/google_containers/busybox
9 command: [ "/bin/sh", "-c", "env" ]
10 env:
11 - name: JERRY_NAME
12 valueFrom:
13 configMapKeyRef:
14 name: special-config
15 key: i042416
16 restartPolicy: Never
可以看到第15行引用了我的ConfigMap的key:i042416
下面使用create -f將該yaml文件導入,創(chuàng)建一個新的pod:
創(chuàng)建之后,能在pod的明細頁面看到configMap的key已經作為環(huán)境變量顯示出來了:
因為我yaml文件里指定pod執(zhí)行的script為/bin/sh -c env, 因此最后會將容器里所有的環(huán)境變量都打印出來,我們定義在ConfigMap里的i042416的值jerry也被顯示了出來:
這種定義環(huán)境變量的做法和SAP云平臺CloudFoundry環(huán)境里定義環(huán)境變量的方式很類似。
CloudFoundry環(huán)境變量一覽表:
https://docs.run.pivotal.io/d...
CF_INSTANCE_ADDR
CF_INSTANCE_GUID
CF_INSTANCE_INDEX
CF_INSTANCE_IP
CF_INSTANCE_INTERNAL_IP
CF_INSTANCE_PORT
CF_INSTANCE_PORTS
DATABASE_URL
HOME
LANG
MEMORY_LIMIT
PORT
PWD
TMPDIR
USER
VCAP_APP_PORT
VCAP_APPLICATION
VCAP_SERVICES
當使用cf push命令將本地應用部署到SAP云平臺的CloudFoundry環(huán)境下時,某些環(huán)境變量會自動被系統(tǒng)寫入相應的值,這個行為同ABAP的sy-sysid自動被設置為當前系統(tǒng)ID具有一樣的邏輯。
比如app router會把用戶訪問請求重定向到XSUAA實例上。
app router在manifest.yml里定義的XSUAA實例名稱為xsuaa-jerry-demo,
在運行時這個XSUAA的id會被SAP云平臺自動寫入環(huán)境變量VCAP_SERVICES里:
要獲取更多Jerry的原創(chuàng)文章,請關注公眾號"汪子熙":
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/32770.html
摘要:同的另一個概念類似,區(qū)別是主要用于保存不包含敏感信息的明文字符串。創(chuàng)建方式上述命令行創(chuàng)建了一個名為的鍵值對,為值為接下來我希望用這個為的值來定義成里的一個環(huán)境變量。 顧名思義,ConfigMap用于保存配置數(shù)據的鍵值對,可以用來保存單個屬性,也可以用來保存配置文件。 ConfigMap同Kubernetes的另一個概念secret類似,區(qū)別是ConfigMap主要用于保存不包含敏感信息...
摘要:對象存儲數(shù)據的機制及使用方式都類似于對象,它們以鍵值方式存儲數(shù)據,在資源中通過環(huán)境變量或存儲卷進行數(shù)據訪問。資源主要有兩種用途一是作為存儲卷注入對象上,供容器應用程序使用二是用于為里的容器拉取鏡像時向私有倉庫提供認證信息。 出于增強可移植性的需求,我們應該從容器鏡像中解耦的不僅有配置數(shù)據,還有默認口令(例如 Redis 或...
摘要:實際上就是一系列鍵值對,存儲于里。在區(qū)域,我給該注入一個名為的環(huán)境變量,值從鍵值對的鍵名稱為的值中取。創(chuàng)建這個使用命令查看這個運行生成的日志,發(fā)現(xiàn)輸出的環(huán)境變量列表中,出現(xiàn)了,這個是我在文件里注入的環(huán)境變量名稱,而就來自里的值。 在Kubernetes官網里,有這樣一篇文章,提到了Kubernetes里的一個最佳實踐就是把應用代碼同配置信息分開,一種方式就是使用Kubernetes 1...
摘要:實際上就是一系列鍵值對,存儲于里。在區(qū)域,我給該注入一個名為的環(huán)境變量,值從鍵值對的鍵名稱為的值中取。創(chuàng)建這個使用命令查看這個運行生成的日志,發(fā)現(xiàn)輸出的環(huán)境變量列表中,出現(xiàn)了,這個是我在文件里注入的環(huán)境變量名稱,而就來自里的值。 在Kubernetes官網里,有這樣一篇文章,提到了Kubernetes里的一個最佳實踐就是把應用代碼同配置信息分開,一種方式就是使用Kubernetes 1...
摘要:實際上就是一系列鍵值對,存儲于里。在區(qū)域,我給該注入一個名為的環(huán)境變量,值從鍵值對的鍵名稱為的值中取。創(chuàng)建這個使用命令查看這個運行生成的日志,發(fā)現(xiàn)輸出的環(huán)境變量列表中,出現(xiàn)了,這個是我在文件里注入的環(huán)境變量名稱,而就來自里的值。 在Kubernetes官網里,有這樣一篇文章,提到了Kubernetes里的一個最佳實踐就是把應用代碼同配置信息分開,一種方式就是使用Kubernetes 1...
閱讀 2288·2023-04-25 14:22
閱讀 3733·2021-11-15 18:12
閱讀 1293·2019-08-30 15:44
閱讀 3215·2019-08-29 15:37
閱讀 638·2019-08-29 13:49
閱讀 3454·2019-08-26 12:11
閱讀 866·2019-08-23 18:28
閱讀 1581·2019-08-23 14:55