搭建helm私服ChartMuseum
介绍
ChartMuseum是一个用Go(Golang)编写的开源Helm Chart Repository服务器
ChartMuseum是一个用Go(Golang)编写的开源Helm Chart Repository服务器,支持云存储后端,包括Google云存储,Amazon S3,Microsoft Azure Blob存储,阿里云OSS存储,Openstack对象存储和Oracle云基础架构 对象存储。Install
下载安装包chartmuseum
#on linux curl -LO https://s3.amazonaws.com/chartmuseum/release/latest/bin/linux/amd64/chartmuseum #on macOS curl -LO https://s3.amazonaws.com/chartmuseum/release/latest/bin/darwin/amd64/chartmuseum #windows curl -LO https://s3.amazonaws.com/chartmuseum/release/latest/bin/windows/amd64/chartmuseum
将chartmuseum binary放到$PATH路径下即可
chmod +x ./chartmuseum mv ./chartmuseum /usr/local/bin
start
启动命令
chartmuseum --port=8080 \ --storage="local" \ --storage-local-rootdir="/var/lib/chartmuseum/chartstorage" \ --log-json \ --basic-auth-user=admin \ --basic-auth-pass="admin"
--port: chartmuseum 服务监听端口
--storage: local表示使用本地存储
--storage-local-rootdir: 本地存储点路径,helm push chart的存储路径
--log-json: 日志显示为json格式
--basic-auth-user: 用户名(使用基本的认证方式,用户名+密码)
--asic-auth-pass: 密码 (chartmuseum服务起来后,后续给helm添加repo时需要加上--username xxx --password ***)
--storage: local表示使用本地存储
--storage-local-rootdir: 本地存储点路径,helm push chart的存储路径
--log-json: 日志显示为json格式
--basic-auth-user: 用户名(使用基本的认证方式,用户名+密码)
--asic-auth-pass: 密码 (chartmuseum服务起来后,后续给helm添加repo时需要加上--username xxx --password ***)
Apply
1)安装helm push
插件
- 网络好的方式,简单方便
helm plugin install https://github.com/chartmuseum/helm-push
2)添加
chartmuseum
到 helm repo
$ helm repo list NAME URL $ helm repo add chartmuseum http://dl.xxx.xxx.com:8080 --username admin --password ****** "chartmuseum" has been added to your repositories $ helm repo list NAME URL chartmuseum http://dl.xxx.xxx.com:8080
(3) 使用 helm push
将开发好的chart push
到远端的 chartmuseum
$ helm push kube-state-metrics-0.2.0.tgz chartmuseum Pushing kube-state-metrics-0.2.0.tgz to chartmuseum... Done.
查看chartmuseum
仓库中的chart
$ helm search chartmuseum/ NAME CHART VERSION APP VERSION DESCRIPTION chartmuseum/kube-state-metrics 0.2.0 1.0 A Helm chart for Kubernetes