将库作为依赖使用
将库接入应用图表
将库作为依赖使用 是 CoddyKit 上的免费 DevOps Bootcamp 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 DevOps Bootcamp 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 DevOps Bootcamp 课程共包含 4 节课。
将库作为依赖项接入
应用型 Chart 可以像添加其他子 Chart 一样,在 Chart.yaml 的 dependencies 下列出库,从而引入该库。
# Chart.yaml
dependencies:
- name: common
version: 1.x.x
repository: file://../common指定本地或远程来源
repository 可以是在开发期间使用的文件路径,也可以是生产环境中的 HTTP 或 OCI URL。两者都会将库的模板引入您的 Chart。
repository: https://charts.bitnami.com/bitnami
# or file://../common使用 dependency update 引入
运行 helm dependency update,将库获取到您的 charts 目录中,并在 Chart.lock 中锁定其版本。
helm dependency update .
# downloads common into charts/模板会合并到一个命名空间
引入库后,库的命名模板会加入 Chart 的全局模板命名空间。您可以像编写这些模板一样调用它们。
使用 include 调用局部模板
使用 include 将库模板渲染到您自己的清单中。它会返回文本,您可以将其通过管道传给其他函数。
metadata:
name: {{ include "common.fullname" . }}始终传入上下文
模板名称后的点号就是您传给局部模板的作用域。请传入根上下文,使其能够读取 .Values 和 .Release。
{{ include "common.labels" . | nindent 4 }}优先使用 include 而不是 template
与 template 不同,include 会返回字符串,因此您可以将其结果通过管道传给 indent 或 nindent,以便正确放置 YAML。
labels:
{{- include "common.labels" . | nindent 2 }}库不会带来任何清单
添加库依赖项本身不会增加任何资源。您自己的模板会通过调用库的局部模板来决定渲染哪些内容。
渲染完整资源
如果库定义了完整对象,您的模板文件可以只有一行 include,用来输出完整的 Service 或 Deployment。
# templates/service.yaml
{{ include "common.service" . }}使用 helm template 验证
请对应用型 Chart 运行 helm template,确认库的局部模板已正确解析,并生成了您预期的 YAML。
helm template my-release .固定库的版本
请将依赖项锁定在已知的 version 范围内,避免库的更改在 CI 中静默改变您渲染出的清单。
dependencies:
- name: common
version: 2.4.0快速检查
您调用了一个库的局部模板,并希望将其结果通过管道传给 nindent。应该使用哪个指令?
回顾:使用库
在 dependencies 下列出库,运行 helm dependency update,然后使用 include 调用其局部模板并传入上下文。🔗
常见问题解答
「将库作为依赖使用」课时是免费的吗?
是的 — 「将库作为依赖使用」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 DevOps Bootcamp 课程的其余内容,请升级到 CoddyKit PRO。 DevOps Bootcamp 课程共包含 4 节课。
「将库作为依赖使用」这节课中我会学到什么?
将库接入应用图表 你通过在浏览器中直接运行的动手代码来练习 DevOps Bootcamp,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 DevOps Bootcamp 需要有经验吗?
无需任何先前经验。CoddyKit 上的 DevOps Bootcamp 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「将库作为依赖使用」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 DevOps Bootcamp 课中编写并运行代码吗?
能。每节 DevOps Bootcamp 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 声明库图表类型
- 导出可复用的命名模板
- 将库作为依赖使用
- 在本地覆盖库的默认值