我有一个NodeJS API,它位于Nginx反向代理后面并连接到Redis实例。要将其部署到 OpenShift 集群上,我需要以下内容:
- Nginx图像,例如 registry.access.redhat.com/rhscl/nginx-114-rhel7
- 红地图像,例如 registry.redhat.io/rhel8/redis-5
- 托管在GitHub上的NodeJS代码
我不确定 OpenShift 运算符和 Helm Charts 是否是正确的选择 - 它们听起来有点矫枉过正(或者,是吗?然后,还有基于 YAML 的安装,例如 OpenShift 上的 Strimzi。
给定一个安装了oc
的OpenShift集群,也许还有另一种方法;其中,以下所有命令都包装在一个shell脚本中。
git clone https://github.com/me/nodejsapi
oc new-project awesome
# Trigger S2I for NodeJS
cd nodejsapi
oc new-app .
# New applications with nginx image
oc import ...
# New applications with redis image
oc import ...
# New config map set-up through [OpenShift APIs][6]
curl ...
您能否建议安装 NodeJS 应用程序和其他应用程序的合适方法?
如果你问我为此创建一个运算符是矫枉过正。使用 Helm 图表更像是正确的抽象。OpenShift 上最简单的解决方案是使用模板。
对我来说,如果您的应用程序需要许多具有不同技术的 pod,正确的选择是 helm chart。但是,如果您不想使用它,另一种方法是使用 yaml 或 json 中的部署文件。 这里是SQL Server 2019的示例 https://github.com/chauuy/sqlserver.git
注意:模板文件也可用于添加SQL Server临时(无持久存储(作为新组件,如MySQL等...