总结:与其他概念类似,只不过主要用于存储不包含敏感信息的纯文本字符串。 如何创建上面的命令行创建了一个名为 的键值对,值为 。 接下来,我想用 this 的值定义一个环境变量。
顾名思义,ConfigMap 用于存储配置数据键值对。 可用于存储单独的属性或配置文件。
ConfigMap 类似于 Kubernetes 的另一个概念:Secret。 不同的是,ConfigMap主要用于存储不包含敏感信息的纯文本字符串。
如何创建:
kubectl create configmapspecial-config --from-literal=i042416=jerry
上述命令linespecial 我创建了一个名为 -config 的键值对。
键是 i042416,值是 jerry。
接下来,我想将其定义为 pod 内的环境变量,值为“jerry”,键为 i042416。
下面是我的 yaml 文件:
apiVersion: v1
2 kind: Pod
3 元数据:
4名称:jerry-config-pod
5规格:
6容器:
7 [ k4 ] 名称:test-container
8 图片:gcr.io/google_containers/busybox
9 命令:[ "/bin/sh", "- c" , "env"]
10 环境:
11 - 名称:JERRY_NAME
12 valueFrom:
13 configMapKeyRef:
14 名称:special-config
15 密钥:i042416
16 restartPolicy: Never
您可以看到第 15 行引用了我的 ConfigMap 密钥 i042416。
使用下面的create -f导入yaml文件并创建一个新的pod。
创建后,您将在 Pod 的详细信息页面上看到 configMap 键作为环境变量列出。
pod运行的脚本在yaml文件中指定为/bin/sh -c env,所以容器中的所有环境变量都是final的,ConfigMap也是显示。
这种定义环境变量的方法与 SAP Cloud Platform CloudFoundry 环境中定义环境变量的方式非常相似。
CloudFoundry 环境变量列表:
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
主页
LANG
MEMORY_LIMIT
端口
PWD
TMPDIR
p >
用户
VCAP_APP_PORT
VCAP_APPLICATION
VCAP_SERVICES
当您使用 cf Push 命令将本地应用程序部署到 SAP Cloud Platform 上的 CloudFoundry 环境时,某些环境变量会自动be系统会写入相应的值。 这个行为与ABAP的sy-sysid自动设置为当前系统ID的逻辑相同。
例如,应用路由器将用户访问请求重定向到XSUAA实例。
应用路由器在manifest.yml中定义的XSUAA实例名称是xsuaa-jerry-demo。
运行时,XSUAA ID会被SAP云平台自动写入环境变量VCAP_SERVICES中。
更多Jerry原创文章,关注他的公众号。 王吉《师》:
评论前必须登录!
注册