您好,登錄后才能下訂單哦!
#運行web容器
[root@node01 ~]# docker run -d -p 81:80 -v /var/www:/usr/local/apache2/htdocs httpd
#創建目錄,用于存放charts包
[root@node01 ~]# mkdir -p /var/www/charts
[root@master ~]# helm create testchart #創建testechart
[root@master ~]# helm package testchart #進行打包
#執行打包操作后,會在當前目錄下生成一個名為testchart-0.1.0.tgz的包
[root@master ~]# mkdir myrepo
[root@master ~]# mv testchart-0.1.0.tgz myrepo/
[root@master ~]# helm repo index myrepo/ --url http://192.168.20.3:81/charts
#上述的url是第一步所運行的httpd鏡像所在的節點IP+端口
[root@master ~]# ls myrepo/ #確定index.yaml文件已生成
index.yaml testchart-0.1.0.tgz
[root@master ~]# cd myrepo/
[root@master myrepo]# scp index.yaml testchart-0.1.0.tgz node01:/var/www/charts
#下面的URL是web容器的URL
[root@master myrepo]# helm repo add newrepo http://192.168.20.3:81/charts
[root@master myrepo]# helm repo list #確認返回的列表有新添加的倉庫
其實,配置至此,已經可以正常供內網環境使用這個charts包的私有倉庫了,下面是一些驗證。
#搜索testchart(使用scp復制到node01的包)
[root@master myrepo]# helm search testchart
NAME CHART VERSION APP VERSION DESCRIPTION
local/testchart 0.1.0 1.0 A Helm chart for Kubernetes
newrepo/testchart 0.1.0 1.0 A Helm chart for Kubernetes
#可以看到返回的結果有新創建的庫下對應的包“newrepo/testchart”
#此時的搜索結果和本地沒有關系,因為這個包是從web容器中搜索到的,可以將本地的包刪除再進行搜索測試
[root@master myrepo]# ls
index.yaml testchart-0.1.0.tgz
[root@master myrepo]# rm -rf *
[root@master myrepo]# helm search testchart
#還是可以看到私有倉庫中的包的
#可以像使用共有庫一樣使用這個私有庫了
[root@master myrepo]# helm install newrepo/testchart -n my-nginx
其實就是一個服務版本升級的操作,大概思路如下:修改解壓后的charts包目錄下的values.yaml文件為所需的值(values.yaml文件包含的是這個服務的值,可以在里面指定鏡像及標簽、數據持久化的類型等等),修改完成后,再使用下面的命令進行升級操作。
[root@master ~]# helm upgrade -f sunqiuming-chart/values.yaml my-nginx newrepo/testchart
#my-nginx是之前實例的名稱,可以通過“helm list”查看實例名稱
#newrepo/testchart :為自定義倉庫中的chart包
———————— 本文至此結束,感謝閱讀 ————————
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。