Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes 参考额外配置文件的包舵图_Kubernetes_Kubernetes Helm - Fatal编程技术网

Kubernetes 参考额外配置文件的包舵图

Kubernetes 参考额外配置文件的包舵图,kubernetes,kubernetes-helm,Kubernetes,Kubernetes Helm,我有一个需要使用命令helm package打包的helm图表,但问题是我需要用额外的配置文件替换values.yaml文件,具体取决于什么环境 通常我引用这个额外的配置文件 用于QA 用于产品 但是现在既然我想打包这个redis helm图表,我该如何打包,以便根据环境切换哪些配置文件或额外的变量 这是我试过的 helm package -f myvalues-qa.yaml ./redis 错误:未知速记标记-f中的“f” 解决这个问题的最佳方法是什么?打包头盔图表时,无法自定义值。这是因

我有一个需要使用命令
helm package
打包的helm图表,但问题是我需要用额外的配置文件替换values.yaml文件,具体取决于什么环境

通常我引用这个额外的配置文件

用于QA

用于产品

但是现在既然我想打包这个redis helm图表,我该如何打包,以便根据环境切换哪些配置文件或额外的变量

这是我试过的

helm package -f myvalues-qa.yaml ./redis
错误:未知速记标记-f中的“f”


解决这个问题的最佳方法是什么?

打包头盔图表时,无法自定义值。这是因为helm图表是应用程序的通用定义,可在一个环境到另一个环境中重复使用,在安装时通过值进行定制

除此之外,我知道您需要一种方法来存储每个特定环境的版本定义(包括helm图表和值)。有很多工具可以让您以声明的方式定义发布,以下是一些工具:


因此,您有一个打包的图表,用于存储通用应用程序,还有一个文件用于存储此图表版本的定义

打包头盔图表时,无法自定义值。这是因为helm图表是应用程序的通用定义,可在一个环境到另一个环境中重复使用,在安装时通过值进行定制

除此之外,我知道您需要一种方法来存储每个特定环境的版本定义(包括helm图表和值)。有很多工具可以让您以声明的方式定义发布,以下是一些工具:


因此,您有一个打包的图表,用于存储通用应用程序,还有一个文件用于存储此图表版本的定义

为什么不将所有值文件保存在图表中?我看不出有什么不好的。因为不同环境下的值是不同的。例如,QA和PROD是不同的。为什么不将所有值文件保存在图表中?我看不出它有什么不好的地方。因为不同环境下的值是不同的。QA与PROD不同,例如,
“…它是通过值在安装时自定义的…”
有没有方法通过引用具有多个值的yaml文件来自定义它?当需要修改20个值时,它可能会变得太难看。这就是为什么需要额外的文件来修改多个值的原因。
“…这是通过值在安装时自定义的…”
是否有方法通过引用具有多个值的yaml文件来自定义它?当一个人需要修改20个值时,它会变得太难看。这就是为什么需要额外的文件来修改多个值
helm install -f myvalues-prod.yaml -f override-prod.yaml --set foo=bar-prod --set foo=newbar-prod ./redis
helm package -f myvalues-qa.yaml ./redis