helm 制作应用的离线安装包
1、安装helm
到helm下载对应的压缩包:https://github.com/helm/helm/releases
解压,将helm文件cp到/usr/local/bin/ 文件夹下,查看helm版本;不同的k8s对应不同的helm版本,下载时留心注意;
tar xf helm-v3.7.2-linux-amd64.tar.gz
cd linux-amd64/
cp helm /usr/local/bin/
helm version
2、添加仓库
以cert-manager为例:
在artifacthub中搜索,地址:https://artifacthub.io/
# 添加仓库
helm repo add jetstack https://charts.jetstack.io
3、使用helm下载对应版本的chats
# 查询版本
helm search repo jetstack/cert-manager --version v1.8.2
# pull应用charts到本地
helm pull jetstack/cert-manager --version v1.8.2
4、通过values.yaml到dockerhub下载对应镜像
# 解压压缩包
tar -zxvf cert-manager-v1.8.2.tgz
# 查看values.yaml 拿到所有的镜像名字 并下载下来
# 将value.yaml 中的 image字段改成如下:
image:registry: quay.iorepository: jetstack/cert-manager-controllertag: v1.8.2pullPolicy: IfNotPresent
5、编写安装脚本
#!/usr/bin/env bashset -exo pipefailif [[ ! -f "values.yaml" ]]; thencp charts/values-template.yaml values.yaml
fiif [[ -d "images" ]] && [[ "`ls -A images`" != "" ]]; thenfor f in images/*; do docker load -i $f; done
fihelm upgrade -i cert-manager \-f values.yaml \-n "functions" --create-namespace \charts/cert-manager-*.tgz