我们可以使用 k8s kustomize 和 kubectl 来设置图像和创建秘密文件吗?
Can we use k8s kustomize with kubectl to set image and create secret file?
我正在使用 k8s kustomize 设置图像并创建一个秘密文件
$(cd ./k8s/overlays/prod && kustomize edit set image gcr.io/PROJECT_ID/image:1.0)
这有效!
现在我正在尝试使用 kubectl kustomize
来做同样的事情而不用 cd . ./k8s/overlays/prod
是否可以将 Kustomize 插件构建到 kubectl 中?
对于使用 kubectl 的 kustomize edit add secret
也一样,而无需将 cd
进入目录?
很遗憾,这是不可能的。 kubectl内置的kustomize
命令只支持打补丁应用kustomize文件
我建议使用独立版本的 kustomize,因为
kubectl 使用 kustomize
版本 2.0.4,而最新的已经是 3.8.8。使用旧版本会破坏一些功能。
在 kubectl 中有很多支持更新版本的请求,但有一些技术原因阻碍了这项工作的完成。您可以跟踪进度 here.
kubectl v1.21 中提供了更新的 kustomize,它最终解锁了更新的 kustomize,后者解锁了 OP 场景(根据@acid_fuji 回答)。
kubectl
kustomize
v1.21
v4.0.5
bogus column to make versions easier to read
v1.20
v2.0.3
我正在使用 k8s kustomize 设置图像并创建一个秘密文件
$(cd ./k8s/overlays/prod && kustomize edit set image gcr.io/PROJECT_ID/image:1.0)
这有效!
现在我正在尝试使用 kubectl kustomize
来做同样的事情而不用 cd . ./k8s/overlays/prod
是否可以将 Kustomize 插件构建到 kubectl 中?
对于使用 kubectl 的 kustomize edit add secret
也一样,而无需将 cd
进入目录?
很遗憾,这是不可能的。 kubectl内置的kustomize
命令只支持打补丁应用kustomize文件
我建议使用独立版本的 kustomize,因为
kubectl 使用 kustomize
版本 2.0.4,而最新的已经是 3.8.8。使用旧版本会破坏一些功能。
在 kubectl 中有很多支持更新版本的请求,但有一些技术原因阻碍了这项工作的完成。您可以跟踪进度 here.
kubectl v1.21 中提供了更新的 kustomize,它最终解锁了更新的 kustomize,后者解锁了 OP 场景(根据@acid_fuji 回答)。
kubectl | kustomize | |
---|---|---|
v1.21 | v4.0.5 | bogus column to make versions easier to read |
v1.20 | v2.0.3 |