如何创建仅含job.yaml模板的K8s Job专用Helm Chart
实现仅生成包含job.yaml的Helm Chart模板有三种常用方案:
方案1:默认生成后精简(最快捷,适合单次使用)
先执行默认的helm create命令生成完整模板,再删除冗余文件即可,操作步骤如下:
- 执行创建命令:
helm create my-job-chart - 进入模板目录删除不需要的文件:
cd my-job-chart/templates rm -f deployment.yaml hpa.yaml ingress.yaml service.yaml serviceaccount.yaml test-connection.yaml rm -rf tests/
- 手动在
templates目录下新建job.yaml,按需调整Chart.yaml和values.yaml的内容即可。_helpers.tpl和NOTES.txt属于非强制文件,不需要也可以直接删除。
方案2:自定义Helm Starter(适合频繁创建同类型Job Chart)
如果经常需要创建Job类型的Helm Chart,可以提前制作自定义启动模板,后续直接调用即可生成符合要求的结构:
- 创建自定义starter的目录结构:
mkdir -p ~/.helm/starters/job-chart/templates
- 在
~/.helm/starters/job-chart/目录下编写通用的Chart.yaml和values.yaml,在templates目录下提前写好通用的job.yaml模板 - 后续创建新的Job Chart时直接执行命令:
helm create my-new-job --starter job-chart,生成的就是你预设的仅含Job的结构。
方案3:手动搭建最简结构(完全无冗余)
Helm Chart的强制结构非常简单,你完全可以不执行helm create命令,手动创建需要的文件即可,最简结构如下:
my-job-chart/ ├── Chart.yaml # 必选,填写Chart的名称、版本、描述等基础信息 ├── templates # 必选,存放Kubernetes资源模板 │ └── job.yaml └── values.yaml # 必选,填写Chart的默认配置参数
内容的提问来源于stack exchange,提问作者alegria
相关产品推荐
相关产品推荐

