- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当前,我有一个OKD / openshift模板,该模板在特定容器上公开端口1883:
ports:
- name: 1883-tcp
port: 1883
containerPort: 1883
protocol: TCP
hostPort: ${MQTT-PORT}
ports:
- name: 1883-tcp
port: 1883
containerPort: 1883
protocol: TCP
{{ if ${MQTT-PORT} != 0 }}
hostPort: ${MQTT-PORT}
{{ /if }}
最佳答案
您不能在模板级别执行这种条件处理。
但是,要获得所需的结果,您可以做以下两件事之一。
选项1
传递条件以在模板级别处理所需的所有参数,例如MQTT-PORT
并在构建服务时映射正确的端口号。
这可能是正确的方法,因为模板被设计为尽可能少逻辑,因此您可以在较低的级别上进行所有决策。
选项2
如果您可以放宽“相同模板”约束,那么我们可以有2种口味的相同模板,一种具有特定的端口,另一种具有参数化的端口。此选项的唯一问题是,每次更改应用程序/服务规范时都将更改2个模板,这违反了DRY principle。
更新
将Helm与OpenShift一起使用可能是最好的选择。您可以使用Helm的条件模板对 Artifact 进行模板化,并将Helm应用程序部署到OpenShift。这是repository,其中具有针对OpenShift量身定制的Helm图表。
此外,您需要指向正确的 namespace ,以便Tiller可以将Helm与OpenShift一起使用。您可以找到有关here的更多详细信息。
关于kubernetes - Openshift/OKD模板,如果/其他情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53618291/
问题场景: OKD 集群有两个集群管理员:User1 和 User2。 如果 User1 使用 ssh 连接到集群并执行 oc login并且并行用户 2 使用新的 ssh session 连接到同一
作为拥有大量参数化 Openshift 模板的管理员,我正在努力在模板中为 kubernetes.io/dockerconfigjson 或 kubernetes.io/dockercfg 类型创建参
当我在openshift / OKD中的容器中运行构建时,我遇到一个奇怪的问题: Running in Durability level: MAX_SURVIVABILITY [Pipeline] n
OpenShift Origin (OKD) 可以安装在 RHEL 8 上吗?文档说明最小 RHEL 7.4 或更高版本:https://docs.okd.io/latest/install/prer
OKD 3.11安装失败“未出现控制平面 pods ” 环境 CentOS Linux发行版7.6.1810(核心) ansible 2.6.16 OKD 3.11 Docker 1.13.1版,内部
我只使用基本 mongo:3.6.4 官方 docker 镜像创建了一个 Mongo 容器,并将其部署到我的 OpenShift OKD 集群,但无法使用集群外部的 Mongo 客户端连接到此 Mon
我是一名优秀的程序员,十分优秀!