全部產品
Search
文件中心

Container Registry:使用Helm 3.7及以上版本推送和拉取Chart

更新時間:Apr 29, 2026

在Helm3中,推送和拉取Chart的是通過使用OCI鏡像倉庫來實現的。OCI鏡像倉庫是一個儲存和管理Chart的地方,可以是本地檔案系統、網路伺服器或雲端儲存等。在Helm 3.7及以上版本,推送和拉取Chart的概念發生了變化,使用OCI製品的方式來推送和拉取Chart。OCI(Open Container Initiative)製品是一種用於儲存和傳輸容器相關檔案的標準格式。

步驟一:配置企業版執行個體

  1. 建立命名空間。

    1. 登入Container Registry控制台。

    2. 在左側導覽列,選擇實例列表。

    3. 在實例列表頁面單擊目標企業版執行個體。

    4. 在企業版執行個體管理頁面選擇鏡像倉庫 > 命名空间。

    5. 在命名空间頁面單擊建立命名空間。

    6. 在建立命名空間面板輸入命名空间名稱,設定是否自動建立倉庫,單擊確定。

  2. 建立鏡像倉庫。

    1. 在企業版執行個體管理頁面選擇倉庫管理 > 鏡像倉庫。

    2. 在鏡像倉庫單擊建立鏡像倉庫。

    3. 在倉庫資訊設定精靈中設定命名空间、倉庫名稱、倉庫類型、镜像版本、镜像加速、摘要、描述資訊,單擊下一步。

    4. 在代码源設定精靈中設定代码源、构建设置、構建規則設定,單擊建立鏡像倉庫。

      參數

      說明

      代碼源

      選擇代碼源。

      構建設定

      • 代碼變更時自動構建鏡像:當分支有代碼提交後會自動觸發構建規則。

      • 海外源智能加速:構建時會在海外機房構建,構建成功後推送到指定地區。如果您專案的Dockerfile檔案需要從國外網站下載檔案,但是跨境網路不穩定,您可以使用海外源智能加速。

      • 不使用緩衝:每次構建鏡像時會強制重新拉取基礎依賴鏡像,可能會增加構建時間。關閉不使用緩衝,可以加速鏡像的構建時間。

      在鏡像倉庫頁面單擊目標鏡像倉庫,您可以在鏡像倉庫管理頁面左側導覽列看到構建,說明鏡像倉庫和原始碼倉庫綁定成功。

  3. 配置訪問憑證。

    設定固定密碼或者臨時密碼,作為後續鏡像的訪問憑證。以下以設定固定密碼為例:

    1. 在企業版執行個體管理頁面選擇實例管理 > 访问凭证。

    2. 在访问凭证頁面單擊設置固定密碼。

    3. 在設置固定密碼對話方塊輸入密碼和確認密碼,單擊確定。

  4. 配置存取控制台策略。

    開啟公網訪問或者添加指定VPC開啟專用網路訪問,保證後續鏡像的上傳。本文以配置公網的存取控制為例。關於配置專用網路的存取控制的更多資訊,請參見配置專用網路的存取控制。

    1. 在企業版執行個體管理頁面選擇倉庫管理 > 訪問控制。

    2. 在訪問控制頁面單擊公網頁簽。

    3. 在公網頁簽下,開啟访问入口,單擊添加公網白名單。

    4. 在添加公網白名單對話方塊中,輸入允許訪問的位址區段和備忘資訊,然後單擊確定。

  5. 開啟公开匿名拉取開關。(可選)

    開啟公开匿名拉取開關後,您可以免登入匿名拉取公開鏡像倉庫。

    1. 登入Container Registry控制台。

    2. 在頂部功能表列,選擇所需地區。

    3. 在左側導覽列,選擇實例列表。

    4. 在實例列表頁面單擊目標企業版執行個體。

    5. 在概覽頁面右側实例设置地區開啟公开匿名拉取開關。

    6. 在提示對話方塊單擊確定。

步驟二:推送和拉取Chart

  1. 執行以下命令,開啟Helm3.7及以上版本用戶端實驗特性。

    export HELM_EXPERIMENTAL_OCI=1
  2. 執行以下命令,登入企業版執行個體。

    其中用於登入的使用者名稱為阿里雲帳號名。

    說明

    如果您推送拉取的是公開Chart倉庫,您可以在容器鏡像控制台概覽頁面開啟公开匿名拉取開關,然後您可以免登入匿名拉取公開Chart倉庫。

    helm3 registry login -u <鏡像倉庫登入名稱> <企業版執行個體名稱>-registry.cn-<企業版執行個體所在的地區>.cr.aliyuncs.com

    樣本:

    helm3 registry login -u acr_test_***@test.aliyunid.com ***-registry.cn-hangzhou.cr.aliyuncs.com

    在返回結果中輸入登入密碼。登入密碼為上文設定的固定密碼。

  3. 執行以下命令,建立HelloWorld Chart。

    helm3 create helloworld
  4. 執行以下命令,在本地將Chart目錄製作成壓縮包。

    tar -zcvf test.tgz helloworld
  5. 推送和拉取Chart。

    • 推送Chart壓縮包至鏡像倉庫。

    • 說明

      推送Chart的地址只需寫到命名空間層級.

      helm3 push test.tgz oci://<企業版執行個體名稱>-registry.cn-<企業版執行個體所在的地區>.cr.aliyuncs.com/<namespace>

      樣本:

      helm3 push test.tgz oci://***-registry.cn-hangzhou.cr.aliyuncs.com/test
    • 從鏡像倉庫拉取Chart壓縮包。

      1. 執行以下命令,從鏡像倉庫拉取Chart壓縮包。

      2. 說明

        拉取Chart的地址需要寫到倉庫層級。

        helm3 pull oci://<企業版執行個體名稱>-registry.cn-<企業版執行個體所在的地區>.cr.aliyuncs.com/<命名空間名稱>/<鏡像倉庫名稱> --version <鏡像版本>

        樣本:

        helm3 pull oci://***-registry.cn-hangzhou.cr.aliyuncs.com/test/trem --version helloworld
      3. 執行以下命令,在本地解壓Chart壓縮包。

      4. tar -xzvf helloworld-[鏡像版本號碼].tgz
      5. 執行以下命令,安裝HelloWorld Chart。

         helm install helloworld ./helloworld