使用仓库管理chart
Chart
本小节
  • 准备一个仓库,并加入到helm repo列表
  • 将我们的chart文件夹做成一个helm包,package命令
  • 上传到仓库
  • 从仓库中安装
我们需要一个charts仓库
1
# 这个仓库是mobvista的一个内部仓库
2
http://harbor-v2.mobvista.com/
3
4
# 登录后请创建自己的一个项目这里是
5
maxcloud
6
7
# 添加到helm repo
8
$ helm repo add maxcloud http://harbor-v2.mobvista.com/chartrepo/maxcloud
9
10
# 非Public的则需要认证
11
$ helm repo add maxcloud [email protected] --password=xxx http://harbor-v2.mobvista.com/chartrepo/maxcloud
12
13
$ helm repo list 130 ↵
14
NAME URL
15
bitnami https://charts.bitnami.com/bitnami
16
elastic https://helm.elastic.co
17
prometheus-community https://prometheus-community.github.io/helm-charts
18
maxcloud http://harbor-v2.mobvista.com/chartrepo/maxcloud
Copied!
将webapp文件夹package一下
1
$ helm package webapp
2
# 会生成一个压缩包
3
ls ./
4
webapp webapp-0.1.0.tgz
Copied!
上传到仓库中
刷一下仓库中的chart列表
1
# 更新下本地缓存
2
$ helm repo update maxcloud
3
4
$ helm search repo maxcloud
5
NAME CHART VERSION APP VERSION DESCRIPTION
6
maxcloud/elasticsearch 7.15.0 7.15.0 MaxCloud helm chart for Elasticsearch
7
maxcloud/engineplus-operator-helm 2.0.0 1.16.0 engineplus-operator-helm
8
maxcloud/fluentd 0.1.0 1.16.0 A Helm chart for Kubernetes
9
maxcloud/hostname 0.1.4 16412783828847696 [] Generate by MaxCloud
10
maxcloud/kibana 7.15.0 7.15.0 Official Elastic helm chart for Kibana
11
maxcloud/rediscache 6.2.0 [redis bundle 复制演示] Generate by MaxCloud
12
maxcloud/webapp 0.1.0 1.16.0 A Helm chart for Kubernetes
13
Copied!
安装测试一下
1
$ helm install webapp --version 0.1.0 maxcloud/webapp
2
NAME: webapp
3
LAST DEPLOYED: Thu May 12 16:25:22 2022
4
NAMESPACE: default
5
STATUS: deployed
6
REVISION: 1
7
NOTES:
8
1. Get the application URL by running these commands:
9
export POD_NAME=$(kubectl get pods --namespace default -l "app.kubernetes.io/name=webapp,app.kubernetes.io/instance=webapp" -o jsonpath="{.items[0].metadata.name}")
10
export CONTAINER_PORT=$(kubectl get pod --namespace default $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}")
11
echo "Visit http://127.0.0.1:8080 to use your application"
12
kubectl --namespace default port-forward $POD_NAME 8080:$CONTAINER_PORT
13
Copied!
查看资源以及可以在maxcloud做个绑定
设置image版本升级一下试试
1
$ helm upgrade webapp --version 0.1.0 maxcloud/webapp
2
3
$ helm upgrade webapp --version 0.1.0 maxcloud/webapp --set image.tag=1.21.0
Copied!
常用命令
  • helm package webapp
  • helm repo update maxcloud
  • helm search repo maxcloud
  • helm install webapp --version 0.1.0 maxcloud/webapp
Copy link