上節談到 helm 倉庫的使用。這節講如何自建 helm 倉庫。若是要搭一個 helm 倉庫,須要一個存儲服務器,咱們這裏選擇 minio(https://docs.min.io/cn/minio-quickstart-guide.html)。html
1 minio安裝linux
2 自建helm倉庫json
3 helm關聯自建倉庫瀏覽器
1 minio 安裝bash
1.1 minio 下載服務器
# wget https://dl.minio.io/server/minio/release/linux-amd64/minio
1.2 minio 安裝ide
# chmod +x minio && mv minio /usr/local/bin
1.3 minio 驗證ui
# minio version
1.4 建立 minio 工做目錄和日誌文件spa
## minio 服務端工做目錄 # mkdir -p /data/minio/oss
## minio 服務端日誌文件 # mkdir -p /data/minio/log && touch /data/minio/log/minio.log
1.5 minio 啓動3d
## 根據本身的實際狀況修改實際的 ip 地址和 port 號 nohup minio server --address 10.110.101.98:9001 /data/minio/oss > /data/minio/log/minio.log 2>&1 &
minio 啓動後,在 /data/minio/oss 目錄下生成隱藏的目錄(.minio.sys)。以下圖所示:
1.6 minio 登陸
打開瀏覽器,輸入 http://10.110.101.98:9001 後回車,看到以下界面:
從 /data/minio/oss/.minio.sys/config/config.json 文件中找到 minio 的祕鑰。以下圖所示:
輸入祕鑰登陸後的界面以下:
自此,minio 安裝並設置成功。
2 自建 helm 倉庫
2.1 建立 helm 倉庫
瀏覽器登陸進 minio 後,點擊右下角的「新增」按鈕,選擇 "Create bucket" 建立 helm 倉庫。以下圖所示:
填寫 「Bucket Name」 並回車:
添加 helm 倉庫後的截圖以下:
2.2 設置 helm 倉庫權限
選擇建立好的 helm 倉庫,點擊「更多」圖標:以下圖所示:
選擇 「Edit policy」 菜單,以下圖所示:
在彈出框中選擇 「Read and write」 配置,而後點擊「新增」按鈕,以下圖所示:
新增成功後,點擊「關閉」按鈕結束整個配置,以下圖所示:
自此,完成自建 helm 倉庫。
3 helm 關聯自建倉庫
上面已經在 minio 存儲服務器中完成了 helm 自建倉庫的建立。下一步就能夠將 helm 跟自建倉庫進行關聯了。執行以下命令:
## 指定 helm 自建倉庫的別名爲 minio,並指向自建倉庫的實際存放地址 # helm repo add minio http://10.110.101.98:9001/helm-repo
執行報錯,報錯的緣由是 helm 3 認爲當前自建倉庫無效,由於缺乏標識 chart 的 index.yaml 文件。
3.1 建立 helm 本地倉庫目錄
注意,是本地倉庫。用來跟 minio 上的 helm 倉庫作關聯的。
# mkdir /root/helm/repo -p
3.2 建立 helm 本地索引文件 index.yaml,命令以下:
# helm repo index /root/helm/repo
3.3 上傳 index.yaml 到 minio helm 倉庫
登陸 minio 服務器端網址(http://10.110.101.98:9001)。選擇 「上傳文件(upload filre)」 按鈕,上傳剛纔生成的 index.yaml。以下圖所示:
3.4 helm 關聯自建倉庫
# 注意不要忘寫倉庫名 helm-repo # helm repo add minio http://10.110.101.98:9001/helm-repo
3.5驗證自建倉庫
# helm repo list
輕鬆完爆 helm 自建倉庫。能夠停下來尖叫了。