$ helm plugin install https://github.com/chartmuseum/helm-push --version v0.10.1

检查plugins列表

$ helm plugin list

NAME    VERSION DESCRIPTION
cm-push 0.10.1  Push chart package to ChartMuseu

2、添加harbor地址

(1)到harbor浏览器后台,添加新的项目 【chart_repo】

将Chart推送到私有仓库harbor-1

(2)helm添加新仓库

$ helm repo add myharbor https://www.zhang-qing.com/chartrepo/chart_repo --username=admin --password=XnCegrM9Ju

如果不知道密码

$ kubectl get secret --namespace default myharbor-core-envvars -o jsonpath="{.data.HARBOR_ADMIN_PASSWORD}" | base64 -d

XnCegrM9Ju

如果出现x509的错误提示,执行

$ echo -n | openssl s_client -showcerts -connect www.zhang-qing.com:443 2>/dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' >> /etc/ssl/certs/ca-bundle.trust.crt

验证查看

$ helm repo list

NAME            URL
bitnami         https://charts.bitnami.com/bitnami
aliyun          https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
helm_sh         https://charts.helm.sh/stable
myharbor        https://www.zhang-qing.com/chartrepo/chart_repo

更新仓库到本地

$ $ helm repo update

3、推送自定义chart

$ cd /root/
$ helm cm-push aminglinux/ myharbor

说明:aminglinux是在10.10自定义Chart实战创建的

4、查看

$ helm repo update
$ helm search repo aminglinux

5、更新自定义chart

更改Chart版本号为0.1.1,app版本为1.16.1

$ cd /root/aminglinux
$ vi Chart.yaml  ##更改版本号

将Chart推送到私有仓库harbor-2

更改replicas为1

$ cd /root/aminglinux
$ vi values.yaml

将Chart推送到私有仓库harbor-3

升级本地release

$ cd /root/aminglinux
$ helm  upgrade aminglinux-release .

6、推送到私有仓库

$ cd ..
$ helm cm-push aminglinux/ myharbor

7、 利用远程仓库安装新release

(1)更新本地仓库

$ helm repo update

(2)删除之前的release,得等一会儿,等到pvc删除

$ cd aminglinux
$ helm uninstall aminglinux-release

(3)安装远程仓库

$ helm install aminglinux-2 myharbor/aminglinux

8、恢复

$ helm uninstall aminglinux-2