摘要:同的另一個(gè)概念類似,區(qū)別是主要用于保存不包含敏感信息的明文字符串。創(chuàng)建方式上述命令行創(chuàng)建了一個(gè)名為的鍵值對,為值為接下來我希望用這個(gè)為的值來定義成里的一個(gè)環(huán)境變量。
顧名思義,ConfigMap用于保存配置數(shù)據(jù)的鍵值對,可以用來保存單個(gè)屬性,也可以用來保存配置文件。
ConfigMap同Kubernetes的另一個(gè)概念secret類似,區(qū)別是ConfigMap主要用于保存不包含敏感信息的明文字符串。
創(chuàng)建方式:
kubectl create configmap special-config --from-literal=i042416=jerry
上述命令行創(chuàng)建了一個(gè)名為special-config的鍵值對,
key為i042416, 值為jerry
接下來我希望用這個(gè)key為i042416的值"jerry"來定義成pod里的一個(gè)環(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文件導(dǎo)入,創(chuàng)建一個(gè)新的pod:
創(chuàng)建之后,能在pod的明細(xì)頁面看到configMap的key已經(jīng)作為環(huán)境變量顯示出來了:
因?yàn)槲襶aml文件里指定pod執(zhí)行的script為/bin/sh -c env, 因此最后會(huì)將容器里所有的環(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
當(dāng)使用cf push命令將本地應(yīng)用部署到SAP云平臺的CloudFoundry環(huán)境下時(shí),某些環(huán)境變量會(huì)自動(dòng)被系統(tǒng)寫入相應(yīng)的值,這個(gè)行為同ABAP的sy-sysid自動(dòng)被設(shè)置為當(dāng)前系統(tǒng)ID具有一樣的邏輯。
比如app router會(huì)把用戶訪問請求重定向到XSUAA實(shí)例上。
app router在manifest.yml里定義的XSUAA實(shí)例名稱為xsuaa-jerry-demo,
在運(yùn)行時(shí)這個(gè)XSUAA的id會(huì)被SAP云平臺自動(dòng)寫入環(huán)境變量VCAP_SERVICES里:
要獲取更多Jerry的原創(chuàng)文章,請關(guān)注公眾號"汪子熙":
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/33075.html
摘要:同的另一個(gè)概念類似,區(qū)別是主要用于保存不包含敏感信息的明文字符串。創(chuàng)建方式上述命令行創(chuàng)建了一個(gè)名為的鍵值對,為值為接下來我希望用這個(gè)為的值來定義成里的一個(gè)環(huán)境變量。 顧名思義,ConfigMap用于保存配置數(shù)據(jù)的鍵值對,可以用來保存單個(gè)屬性,也可以用來保存配置文件。 ConfigMap同Kubernetes的另一個(gè)概念secret類似,區(qū)別是ConfigMap主要用于保存不包含敏感信息...
摘要:對象存儲數(shù)據(jù)的機(jī)制及使用方式都類似于對象,它們以鍵值方式存儲數(shù)據(jù),在資源中通過環(huán)境變量或存儲卷進(jìn)行數(shù)據(jù)訪問。資源主要有兩種用途一是作為存儲卷注入對象上,供容器應(yīng)用程序使用二是用于為里的容器拉取鏡像時(shí)向私有倉庫提供認(rèn)證信息。 出于增強(qiáng)可移植性的需求,我們應(yīng)該從容器鏡像中解耦的不僅有配置數(shù)據(jù),還有默認(rèn)口令(例如 Redis 或...
摘要:實(shí)際上就是一系列鍵值對,存儲于里。在區(qū)域,我給該注入一個(gè)名為的環(huán)境變量,值從鍵值對的鍵名稱為的值中取。創(chuàng)建這個(gè)使用命令查看這個(gè)運(yùn)行生成的日志,發(fā)現(xiàn)輸出的環(huán)境變量列表中,出現(xiàn)了,這個(gè)是我在文件里注入的環(huán)境變量名稱,而就來自里的值。 在Kubernetes官網(wǎng)里,有這樣一篇文章,提到了Kubernetes里的一個(gè)最佳實(shí)踐就是把應(yīng)用代碼同配置信息分開,一種方式就是使用Kubernetes 1...
摘要:實(shí)際上就是一系列鍵值對,存儲于里。在區(qū)域,我給該注入一個(gè)名為的環(huán)境變量,值從鍵值對的鍵名稱為的值中取。創(chuàng)建這個(gè)使用命令查看這個(gè)運(yùn)行生成的日志,發(fā)現(xiàn)輸出的環(huán)境變量列表中,出現(xiàn)了,這個(gè)是我在文件里注入的環(huán)境變量名稱,而就來自里的值。 在Kubernetes官網(wǎng)里,有這樣一篇文章,提到了Kubernetes里的一個(gè)最佳實(shí)踐就是把應(yīng)用代碼同配置信息分開,一種方式就是使用Kubernetes 1...
摘要:實(shí)際上就是一系列鍵值對,存儲于里。在區(qū)域,我給該注入一個(gè)名為的環(huán)境變量,值從鍵值對的鍵名稱為的值中取。創(chuàng)建這個(gè)使用命令查看這個(gè)運(yùn)行生成的日志,發(fā)現(xiàn)輸出的環(huán)境變量列表中,出現(xiàn)了,這個(gè)是我在文件里注入的環(huán)境變量名稱,而就來自里的值。 在Kubernetes官網(wǎng)里,有這樣一篇文章,提到了Kubernetes里的一個(gè)最佳實(shí)踐就是把應(yīng)用代碼同配置信息分開,一種方式就是使用Kubernetes 1...
閱讀 1163·2023-04-26 01:35
閱讀 2522·2021-11-02 14:44
閱讀 7676·2021-09-22 15:38
閱讀 2208·2021-09-06 15:11
閱讀 3727·2019-08-30 15:53
閱讀 803·2019-08-29 16:54
閱讀 634·2019-08-26 13:48
閱讀 1774·2019-08-26 13:47