【发布时间】:2019-12-03 18:04:21
【问题描述】:
我在 Openshift 3.9 中有一个项目/命名空间。它有一个 Mysql db pod,凭据详细信息存储为secrets。
在部署我的 Springboot 应用程序时,在 Openshift UI 中,我更改了 Deployment Configuration 以将动态变量从我的 APP 映射到 Mysql 机密。
现在我想自动执行此步骤,以及如何在使用 oc new-app cmd 时提及/传递这些秘密。我正在使用以下命令,但不确定如何将变量传递/映射到机密。
oc new-app redhat-openjdk18-openshift~https://github.com/xyzasdkjasnda/openshift-mysql
我在某处看到了类似下面的解决方法,
oc 新应用 redhat-openjdk18-openshift~https://github.com/xyzasdkjasnda/openshift-mysql | jq '.items[] |选择(.kind ==“部署配置”)| .spec.template.spec.containers[0].env += [{"name":"db_name","valueFrom":{"secretKeyRef":{"key":"database-name","name":"mysql"}}},{"name":"db_username", "valueFrom":{"secretKeyRef":{"key":"database-user","name":"mysql"}}},{"name":"db_password","valueFrom":{"secretKeyRef":{ "key":"database-password","name":"mysql"}}}]' | \ oc 应用 --filename -
【问题讨论】:
标签: openshift openshift-origin openshift-client-tools