1、下载安装包并部署
# on Linux
curl -LO https://s3.amazonaws.com/chartmuseum/release/latest/bin/linux/amd64/chartmuseum
$ Chmod +x ./chartmuseum
$ mv ./chartmuseum /usr/local/bin
$ chartmuseum --help
2、使用本地存储,以systemd方式启动chartmuseum
chartmuseum.service文件
[root@tcz-dev-adam chartmuseum]# cat /etc/systemd/system/chartmuseum.service
[Unit]
Description=chartmuseum
Requires=network-online.target
After=network-online.target
[Service]
EnvironmentFile=/etc/chartmuseum/chartmuseum.config
User=root
Restart=allways
ExecStart=/usr/local/bin/chartmuseum $ARGS
ExecStop=/usr/local/bin/chartmuseum step-down
[Install]
WantedBy=multi-user.target
chartmuseum.config配置文件
[root@tcz-dev-adam chartmuseum]# cat /etc/chartmuseum/chartmuseum.config
ARGS=\
--port=8080 \
--storage="local" \
--storage-local-rootdir="/var/lib/chartmuseum/chartstorage" \
--log-json \
--basic-auth-user=admin \
--basic-auth-pass="xxxxxx"
3、启动chartmuseum服务
systemctl start chartmuseum && systemctl enable chartmuseum
systemctl status chartmuseum
4、安装push插件
$ helm plugin install https://github.com/chartmuseum/helm-push
#安装指定版本得插件
$ helm plugin install https://github.com/chartmuseum/helm-push --version 0.9.0
$ helm repo add chartmuseum http://10.139.8.16:8080 --username admin --password admin
$ helm repo list
5、上传和删除仓库的chart
#列出仓库中所有已有的包
curl http://infra-helm-sit-chartmuseum:8879/api/charts
#上传mychart包
curl --data-binary "@mychart-0.1.0.tgz" http://localhost:8080/api/charts
#删除仓库openvpn
curl -X DELETE http://infra-helm-sit-chartmuseum:8879/api/charts/openvpn/4.2.3