开发自己的 chart - 每天5分钟玩转 Docker 容器技术(167)
Kubernetes 给我们提供了大量官方 chart,不过要部署微服务应用,还是需要开发自己的 chart,下面就来实践这个主题。
创建 chart
执行 helm create mychart
的命令创建 chart mychart
:
Helm 会帮我们创建目录 mychart
,并生成了各类 chart 文件。这样我们就可以在此基础上开发自己的 chart 了。
新建的 chart 默认包含一个 nginx 应用示例,values.yaml 内容如下:
开发时建议大家参考官方 chart 中的模板、values.yaml、Chart.yaml,里面包含了大量最佳实践和最常用的函数、流控制,这里就不一一展开了。
调试 chart
只要是程序就会有 bug,chart 也不例外。Helm 提供了 debug 的工具:helm lint
和 helm install --dry-run --debug
。
helm lint
会检测 chart 的语法,报告错误以及给出建议。
比如我们故意在 values.yaml 的第 8 行漏掉了一个 :
,
helm lint mychart
会指出这个语法错误。
mychart
目录被作为参数传递给 helm lint
。错误修复后则能通过检测。
helm install --dry-run --debug
会模拟安装 chart,并输出每个模板生成的 YAML 内容。
我们可以检视这些输出,判断是否与预期相符。
同样,mychart
目录作为参数传递给 helm install --dry-run --debug
。
下一节我们讨论如何安装并将 chart 添加到仓库。
书籍:
1.《每天5分钟玩转Kubernetes》
https://item.jd.com/26225745440.html
2.《每天5分钟玩转Docker容器技术》
https://item.jd.com/16936307278.html
3.《每天5分钟玩转OpenStack》
https://item.jd.com/12086376.html
开发自己的 chart - 每天5分钟玩转 Docker 容器技术(167)相关推荐
- 再次实践 MySQL chart - 每天5分钟玩转 Docker 容器技术(166)
学习了 chart 结构和模板的知识后,现在重新实践一次 MySQL chart,相信会有更多收获. chart 安装前的准备 作为准备工作,安装之前需要先清楚 chart 的使用方法.这些信息通常记 ...
- 管理和安装 chart - 每天5分钟玩转 Docker 容器技术(168)
2019独角兽企业重金招聘Python工程师标准>>> 安装 chart 当我们觉得准备就绪,就可以安装 chart,Helm 支持四种安装方法: 安装仓库中的 chart,例如:h ...
- chart 模板 - 每天5分钟玩转 Docker 容器技术(165)
Helm 通过模板创建 Kubernetes 能够理解的 YAML 格式的资源配置文件,我们将通过例子来学习如何使用模板. 以 templates/secrets.yaml 为例: 从结构看,文件的内 ...
- Helm 架构 - 每天5分钟玩转 Docker 容器技术(161)
在实践之前,我们先来看看 Helm 的架构. Helm 有两个重要的概念:chart 和 release. chart 是创建一个应用的信息集合,包括各种 Kubernetes 对象的配置模板.参数定 ...
- 使用 Helm - 每天5分钟玩转 Docker 容器技术(163)
2019独角兽企业重金招聘Python工程师标准>>> Helm 安装成功后,可执行 helm search 查看当前可安装的 chart. 这个列表很长,这里只截取了一部分.大家不 ...
- Kubernetes Dashboard - 每天5分钟玩转 Docker 容器技术(173)
前面章节 Kubernetes 所有的操作我们都是通过命令行工具 kubectl 完成的.为了提供更丰富的用户体验,Kubernetes 还开发了一个基于 Web 的 Dashboard,用户可以用 ...
- PV PVC - 每天5分钟玩转 Docker 容器技术(150)
Volume 提供了非常好的数据持久化方案,不过在可管理性上还有不足. 拿前面 AWS EBS 的例子来说,要使用 Volume,Pod 必须事先知道如下信息: 当前 Volume 来自 AWS EB ...
- stack 的优势 - 每天5分钟玩转 Docker 容器技术(113)
stack 将应用所包含的 service,依赖的 secret.voluem 等资源,以及它们之间的关系定义在一个 YAML 文件中.相比较手工执行命令或是脚本,stack 有明显的优势. YAML ...
- Why Helm? - 每天5分钟玩转 Docker 容器技术(160)
2019独角兽企业重金招聘Python工程师标准>>> 本章我们将学习 Helm,Kubernetes 的包管理器. 每个成功的软件平台都有一个优秀的打包系统,比如 Debian.U ...
最新文章
- 如何查看已安装的CentOS版本信息
- linux 内核 目录项高速缓存 dentry cache 简介
- ASP.NET中EVAL用法大全
- JS实现select去除option的使用注意事项
- 数据库死锁的解决办法
- Kibana安装及简单使用
- 我的Objective-C系列文章
- python游戏猫咪藏在哪个房间_tes体系风格已经定型,EZ加猫咪似乎成唯一解,在藏还是真没了?...
- [数学]点、线、面分割问题
- css background-attachment:fixed 固定背景、不随内容一起滚动
- emacs .emacs_使用Emacs进行社交并跟踪您的待办事项列表
- ios - 高效,准确的网络检测
- 如何将文件自动一传到服务器,Windows文件传输篇:怎么上传文件到服务器?
- NewLife kick off
- pygame小游戏——中国地图拼图小游戏
- 混合波束成形matlab,探索 5G 系统的混合波束成形架构
- 2021年最新UI/UE设计软件全家桶
- vue项目优化及步骤
- LCD(一) TFT液晶时序图
- 手机软件测试电脑,(转载)如何在电脑上测试手机网站