openshift 3.11 - oc 进程 - 如何传递环境变量?
openshift 3.11 - oc process - how to pass env variables?
我希望在我的 openshift oc 进程命令中传递环境变量。
我看到了参数文件的选项,但没有看到环境变量的选项。
问题:params = 环境变量吗?我的意思是我可以使用这个选项设置环境变量吗?我试过了,但是部署完成后我没有设置任何环境变量。
我正在阅读以下文档。
https://docs.openshift.com/container-platform/3.11/dev_guide/templates.html
我实现设置环境变量的唯一方法如下所示
oc process -f helloworld.yaml | oc create -f -
curl http://servertofetchenvironmentvariables:5005/env/dev/helloworld | oc set env dc/helloworld -
这结束了两次部署。解决此问题并将其作为一个命令的任何线索都会有所帮助。我必须使用模板来创建我的应用程序。
Question: Are params = environment variables?
不,参数仅适用于您的模板文件。您的模板文件包含占位符,例如“${MY_PASSWORD}
”,然后在使用 oc process
.
时替换这些占位符
I mean can i set env variables using this option?
可以,但您需要编辑模板文件以包含所有这些环境变量和相关占位符。
Only way I am achieving setting up my env variables is like below
这绝对有效,因为您随后会使用新的环境变量更新创建的 DeploymentConfig
(在您的情况下为 dc/helloworld
)。
一个很好的替代方法是使用 ConfigMap 填充环境变量(因此它们与您的 Deployment 完全分开)使用 envFrom
像这样:
apiVersion: v1
kind: Pod
metadata:
name: dapi-test-pod
spec:
containers:
- name: test-container
image: k8s.gcr.io/busybox
command: [ "/bin/sh", "-c", "env" ]
envFrom:
- configMapRef:
name: special-config
restartPolicy: Never
这也会将您的配置与 Deployment 分离,您可以在 ConfigMap 中存储/更改环境变量。
我希望在我的 openshift oc 进程命令中传递环境变量。
我看到了参数文件的选项,但没有看到环境变量的选项。
问题:params = 环境变量吗?我的意思是我可以使用这个选项设置环境变量吗?我试过了,但是部署完成后我没有设置任何环境变量。
我正在阅读以下文档。 https://docs.openshift.com/container-platform/3.11/dev_guide/templates.html
我实现设置环境变量的唯一方法如下所示
oc process -f helloworld.yaml | oc create -f -
curl http://servertofetchenvironmentvariables:5005/env/dev/helloworld | oc set env dc/helloworld -
这结束了两次部署。解决此问题并将其作为一个命令的任何线索都会有所帮助。我必须使用模板来创建我的应用程序。
Question: Are params = environment variables?
不,参数仅适用于您的模板文件。您的模板文件包含占位符,例如“${MY_PASSWORD}
”,然后在使用 oc process
.
I mean can i set env variables using this option?
可以,但您需要编辑模板文件以包含所有这些环境变量和相关占位符。
Only way I am achieving setting up my env variables is like below
这绝对有效,因为您随后会使用新的环境变量更新创建的 DeploymentConfig
(在您的情况下为 dc/helloworld
)。
一个很好的替代方法是使用 ConfigMap 填充环境变量(因此它们与您的 Deployment 完全分开)使用 envFrom
像这样:
apiVersion: v1
kind: Pod
metadata:
name: dapi-test-pod
spec:
containers:
- name: test-container
image: k8s.gcr.io/busybox
command: [ "/bin/sh", "-c", "env" ]
envFrom:
- configMapRef:
name: special-config
restartPolicy: Never
这也会将您的配置与 Deployment 分离,您可以在 ConfigMap 中存储/更改环境变量。