全部產品
Search
文件中心

Container Registry:構建倉庫與鏡像

更新時間:Aug 23, 2024

本文介紹如何在個人版執行個體建立鏡像倉庫、設定構建規則以及構建鏡像。

使用說明

說明

個人版鏡像構建的逾時時間設定為30分鐘。如果您對構建效能有要求,需要使用靈活構建配置、自訂構建參數、多架構構建等功能,建議您使用企業版執行個體構建鏡像。具體操作,請參見使用企業版執行個體構建鏡像

使用個人版執行個體構建鏡像前,您需要確保Dockerfile檔案中的基礎鏡像滿足以下要求:

  • 支援使用所有免授權的公開公網鏡像。

  • 支援使用個人版同地區同帳號的私人公網鏡像。

  • 不支援使用個人版非同地區私人鏡像。

  • 不支援使用所有地區VPC網路鏡像。

  • 不支援使用第三方授權鏡像。

例如,在構建鏡像時,您的Dockerfile檔案中的基礎鏡像可以使用個人版的公網公開鏡像,不可以使用第三方授權鏡像。

功能特點

說明

使用構建功能需繫結來源代碼倉庫,請您建立個人版執行個體後,繫結來源代碼倉庫。

  • 代碼變更時自動觸發構建

    開啟代碼變更自動構建鏡像後,每次提交代碼將自動觸發鏡像構建,減少手動觸發構建的繁瑣工作。

    1. 登入Container Registry控制台

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

    3. 在左側導覽列,選擇執行個體列表

    4. 執行個體列表頁面單擊個人版執行個體。

    5. 在個人版執行個體管理頁面選擇倉庫管理 > 鏡像倉庫

    6. 鏡像倉庫頁面,單擊目標倉庫右側操作列的管理

    7. 在左側導覽列,選擇構建,然後開啟代碼變更自動構建鏡像

    代碼變更時自動構建鏡像

  • 海外構建

    代碼構建過程中可能會依賴國外源,但由於網路環境,ACR提供海外機器構建功能。在海外構建完成後,將鏡像推送到指定地區的倉庫中。

    說明

    有時海外回中國內地的網路不穩定,可能會導致鏡像推送逾時失敗。

    海外構建

  • 不使用緩衝

    開啟不使用緩衝後,每次構建都會重新拉取基礎依賴鏡像,這可能會增加鏡像拉取時間,因此建議關閉該選項。

  • 多階段構建

    阿里雲容器鏡像構建同時支援多階段構建特性。

步驟一:綁定代碼源

綁定代碼源,本文以綁定GitHub為例。

重要
  1. 登入Container Registry控制台

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

  3. 在左側導覽列,選擇執行個體列表

  4. 執行個體列表頁面單擊個人版執行個體。

  5. 在個人版執行個體管理頁面選擇倉庫管理 > 代碼源

  6. 代碼源頁面單擊GitHub右側操作列下的綁定帳號

  7. GitHub對話方塊單擊點擊前往原始碼倉庫登入

  8. 在GitHub頁面輸入帳號和密碼,然後單擊Sign in

    頁面自動跳轉至容器鏡像控制台,並且顯示您已成功綁定GitHub帳號

步驟二:建立鏡像倉庫

建立鏡像倉庫前,需要在所需地區下已建立命名空間。更多資訊,請參見命名空間的基本操作

  1. 登入Container Registry控制台

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

  3. 在左側導覽列,選擇執行個體列表

  4. 執行個體列表頁面單擊個人版執行個體。

  5. 在個人版執行個體管理頁面選擇倉庫管理 > 鏡像倉庫

  6. 鏡像倉庫頁面單擊建立鏡像倉庫

  7. 倉庫資訊設定精靈中,設定命名空間倉庫名稱摘要倉庫類型,本例選擇私人鏡像倉庫類型。然後單擊下一步

  8. 代碼源設定精靈中設定代碼源構建設定構建規則設定,單擊建立鏡像倉庫

    參數

    說明

    代碼源

    選擇代碼源,本文以選擇GitHub代碼為例。單擊GitHub,然後選擇命名空間和倉庫。

    構建設定

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

    • 海外機器構建:構建時會在海外機房構建,構建成功後推送到指定地區。如果您構建任務涉及的原始碼倉庫、容器鏡像倉庫等資源在中國內地,建議您關閉海外機器構建,使用中國內地構建。

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

步驟三:設定構建規則

說明

如果您的鏡像倉庫管理頁面沒有構建,說明繫結來源代碼失敗,請參見步驟一重新繫結來源代碼。

  1. 登入Container Registry控制台

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

  3. 在左側導覽列,選擇執行個體列表

  4. 執行個體列表頁面單擊個人版執行個體。

  5. 在個人版執行個體管理頁面選擇倉庫管理 > 鏡像倉庫

  6. 鏡像倉庫頁面單擊目標倉庫右側操作列中的管理

  7. 在鏡像倉庫管理頁面左側導覽列單擊構建,在構建規則設定地區的左側單擊添加規則

    說明

    如需修改構建規則,單擊目標規則操作列中的修改

  8. 添加構建規則對話方塊中設定構建規則,然後單擊確定構建個人版

    參數

    說明

    類型

    設定原始碼倉庫的類型,可以是Branch或Tag。

    Branch/Tag

    設定構建的代碼分支。

    構建上下文目錄

    設定Dockerfile檔案所在的目錄。指的是相對目錄,以Branch/Tag的根目錄為父目錄,例如您的Branch為Master,您的Dockerfile檔案放在Master下,則您的Dockerfile目錄為Master/Dockerfile。

    Dockerfile檔案名稱

    設定Dockerfile檔案名稱,預設為Dockerfile。

    鏡像版本

    設定鏡像Tag,例如latest。

步驟四:構建鏡像

  1. 登入Container Registry控制台

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

  3. 在左側導覽列,選擇執行個體列表

  4. 執行個體列表頁面單擊個人版執行個體。

  5. 在個人版執行個體管理頁面選擇倉庫管理 > 鏡像倉庫

  6. 鏡像倉庫頁面,單擊目標倉庫右側操作列的管理

  7. 在鏡像倉庫詳情頁面,單擊左側導覽列中的構建

  8. 構建規則設定地區,單擊目標規則操作列中的立即構建

    構建完成後,產生新的構建記錄。

    說明

    單擊構建記錄右側操作列下的日誌,可以查看構建日誌。

  9. 等待鏡像構建完成後,單擊左側功能表列中的鏡像版本,查看已構建完成的鏡像列表。

  10. 如果您需要查看所有鏡像,請單擊左側導覽列中的構建,在構建設定中開啟海外機器構建不使用緩衝,預設開啟代碼變更自動構建鏡像,然後單擊左側功能表列中的鏡像版本,可以看到所有鏡像版本。

後續步驟