### Helm是什么 Helm就是一个K8s的软件包管理工具,相当于centos的yum或是ubuntu的apt-get。所以一个完整的Helm体系就可以概括为: ![[Drawing 2022-01-10 23.10.38.excalidraw]] 当然,Helm的仓库可以有很多供应商,就像yum的仓库有不同的源,阿里的,腾讯的,还有centos官方的,有一些软件,你在阿里上面找不到,但是腾讯的源有。一样的道理。 ### Helm软件包 - Chart 在[[kubernetes]]上面运行的,是服务,所以chart就是这些服务运行的定义,例如: 1. 定义应用: 1. 我需要跑一个nginx应用服务,运行一个网站,然后这个应用通过一个80端口向外提供服务。 2. 我需要跑一个spring boot应用服务,提供一些接口,供上面的网站调用。 2. 定义服务 1. 定义一个web服务,后端指向上述nginx应用服务 2. 定义一个api服务,后端指向上述的springboot应用服务 3. 开放服务 1. 通过ingress做域名解析,将web.example.com解析到上面的web服务 2. 通过ingress做域名解析,将api.example.com解析到上面的api服务 ### Helm仓库 Harbor,是一个企业级的制品库管理系统,这里说的制品,包括了Docker镜像和Helm包。所以,以harbor为基础,可以搭建一个企业私有的制品发行管理系统。 创医元的Harbor地址为:[创医元harbor](https://harbor.devops.jtgdyyb.cn) 关于Harbor的详细介绍参考[[制品仓库Harbor]] ### HelmCLI helm官方提供了一个没有比yum看起来更强大的工具,也就是这样一个命令行。 * 查找仓库中的mysql服务