openshift - 我可以从模板中的参数设置 env 键吗
问题描述
在 OpenShift 4.3 中,我试图从模板中的参数值设置 env 键。例如:
"env": [
{
"name: "${FOO}-TEST",
"value": "${BAR}"
},
{
"name: "TEST",
"value": "${BAR}"
}
]
"parameters": [
{
"name": "FOO",
"required": true
},
{
"name": "BAR",
"required": true
}
]
然后,使用 -p FOO=X -p BAR=Y 的 oc new-app,并检查 pod 上的环境变量,它显示:
TEST=Y
但不显示:
X-TEST=Y
在模板中,我可以不包含参数值作为 env 键吗?
解决方案
我认为您可以将参数值设置为 env 键。您能否按以下方式检查模板是否正常工作?
- 首先将模板导出为 yaml 文件。
$ oc get template <your template name> -o yaml > test-template.yml
- 从输出中检查您指定的参数是否正在设置。
$ oc process -f test-template.yml -p FOO=X -p BAR=Y
这是我的简单测试结果。例如>
$ cat test-temp.yml
:
containers:
- env:
- name: "${NAME}-KEY"
value: ${NAME}
:
$ oc process -f test-temp.yml -p NAME=test
:
"containers": [
{
"env": [
{
"name": "test-KEY",
"value": "test"
}
],
:
我希望它对你有帮助。
推荐阅读
- swift - reloadAllTimelines 不适用于 UserDefaults
- java - 使用对象映射器反序列化具有 null 作为值的属性
- c++ - C++ Visual Studio Windows:如何在 dll 中声明但不定义外部函数
- javascript - Discord.JS 邀请创建事件?
- django - 从 django 关系中的单独模型中检索多行
- scala - 播放框架并阅读 Scala 注释
- php - Illuminate\Database\QueryException: SQLSTATE[42S02]: Base table or view not found: 1146 Table (truncated
- linux - 为什么在终端中键入“strace ls”时无法在 strace 输出中查看 clone() 系统调用?
- c - do_crypt() 中的分段错误
- ansible - ansible delegate_to 运行多次