全部產品
Search
文件中心

Elastic Compute Service:鏡像構建服務最佳實務

更新時間:Apr 10, 2025

鏡像構建服務是阿里雲提供的一站式鏡像定製、修複與測試、跨地區分發、跨帳號共用的服務。本教程通過鏡像構建服務構建Nginx開發環境的自訂鏡像,並通過該自訂鏡像建立ECS執行個體測試Nginx環境是否正常訪問。

前提條件

在首次建立鏡像組件或鏡像模板時,系統會自動為您建立一個鏡像關聯服務角色(AliyunServiceRoleForECSImageBuilder),用於授權鏡像構建服務訪問相關的雲資源。當使用RAM使用者時,需要手動為其添加鏡像構建服務的許可權,以便管理鏡像構建服務關聯角色。主賬戶預設擁有此許可權。具體請參見管理鏡像構建服務關聯角色

實踐流程

本教程中樣本的資源配置說明如下:

  • 當前地區:華北2(北京)

  • 分發地區:華東1(杭州)

  • 公用鏡像:Alibaba Cloud Linux 3

  • 鏡像模板構建內容:Nginx開發環境

本教程通過鏡像構建服務構建Nginx開發環境的流程如下:

  1. 步驟一:建立鏡像組件:在華北2(北京)地區建立包含Nginx開發環境的鏡像組件。

  2. 步驟二:建立並執行鏡像模板:通過建立的鏡像組件快速建立鏡像模板並執行構建任務,然後將構建的自訂鏡像(本教程以Nginx-image作為首碼)分發至華東1(杭州)地區。

  3. 步驟三:建立ECS執行個體並測試Nginx環境:在華東1(杭州)地區使用構建的自訂鏡像建立ECS執行個體,並在本地測試是否可以正常訪問Nginx環境。如果可以訪問,表示鏡像構建服務構建的自訂鏡像可以正常使用。

步驟一:建立鏡像組件

  1. 訪問ECS控制台-鏡像構建

  2. 在頁面左側頂部,選擇目標資源所在的資源群組和地區。地區

  3. 鏡像構建頁面,單擊鏡像組件頁簽。

    說明

    如果您是第一次訪問鏡像構建服務,將進入鏡像構建歡迎頁面,您需要先單擊立即體驗進入鏡像構建頁面。

  4. 選擇自訂群組件頁簽,然後單擊建立鏡像組件

  5. 建立Build組件。

    本教程中主要說明以下參數,其他更多參數說明請參見建立鏡像組件

    • 組件類型:選擇Build

    • 系統類別型:選擇Linux

    • 配置組件內容:在YAML頁簽中直接選擇建立安裝Nginx組件,構建命令如下:

      image

  6. 建立Test組件。

    本教程中主要說明以下參數,其他更多參數說明請參見建立鏡像組件

    • 組件類型:選擇Test

    • 系統類別型:選擇Linux

    • 配置組件內容:在YAML頁簽中直接選擇Nginx是否安裝測試組件,測試命令如下:

      image

步驟二:建立並執行鏡像模板

  1. 鏡像模板頁簽,單擊建立鏡像模板

  2. 完成鏡像模板的配置,然後單擊確定

    本教程中主要說明以下參數,其他更多參數說明請參見建立鏡像模板並執行構建任務

    • 配置源鏡像:根據您的業務需求,選擇源鏡像類型和鏡像,鏡像模板會基於源鏡像進行構建。

      本教程選擇公用鏡像,並選擇一個Alibaba Cloud Linux 3的鏡像ID,例如:

      image

    • 配置模板內容:在構建模板中添加鏡像組件、確定是否開啟鏡像檢測修複以及鏡像測試。本教程中樣本配置如下所示。

      image

      參數

      說明

      構建模板

      選擇步驟一建立的Build組件。

      是否執行鏡像修複

      預設開啟,在執行構建任務前系統自動檢測並修複構建鏡像的一些常見問題,並安裝雲上鏡像的必要組件。

      是否執行鏡像測試

      預設開啟,在構建任務執行完成後系統自動使用指定的Test類型鏡像組件對新鏡像進行測試,以確保在正式使用前該鏡像可以達到預期的使用效果。

      測試構建模板

      選擇步驟一建立的Test組件。

    • 配置中轉執行個體:根據您對構建鏡像的需要,設定中轉執行個體的規格、儲存大小、公網頻寬等資源。

      重要

      公網頻寬預設值為0,即不具備公網訪問能力。當您的鏡像構建內容中存在需要訪問公網的命令時,您必須設定一定值的公網頻寬,否則將導致鏡像構建任務失敗。

      本教程中需要公網訪問能力下載依賴,所以必須設定公網頻寬/Mbps為非0值。

    • 配置鏡像分發:根據您的業務需求,可以將構建的鏡像分發至指定地區或共用至指定阿里雲帳號。本教程中樣本配置如下所示。

      image

      參數

      說明

      目標鏡像名稱

      目標鏡像名稱首碼,最終產生的鏡像名稱會自動拼接執行任務返回的構建任務ID,即自訂名稱首碼_構建任務ID。本教程中名稱首碼設定為Nginx-image

      當前地區

      預設分發 華北2(北京)

      目標地區

      選擇華東1(杭州)

      建立後立即執行

      選擇

  3. 鏡像模板頁簽中找到已建立的鏡像模板,單擊鏡像模板ID,在鏡像模板詳情頁面的構建歷史頁簽查看任務的執行過程。

    說明

    構建過程大致需要十分鐘左右,請您耐心等待。

    • 當構建任務的狀態為成功時,表示構建鏡像任務執行成功,同時會產生對應的鏡像ID。您可以單擊鏡像ID查看產生的鏡像詳情。

    • 如果狀態為失敗,您可以在執行結果中查看詳細資料,定位並排查問題。

  4. 在目標地區查看構建的自訂鏡像。

    1. 在頂部功能表列處,選擇鏡像目標地區,本教程是華東1(杭州)

    2. 自訂鏡像頁簽的鏡像列表中,查看產生的新鏡像,鏡像名稱以Nginx-image開頭。

步驟三:建立ECS執行個體並測試Nginx環境

  1. 在頂部功能表列處,選擇構建鏡像所在的地區,本教程是華東1(杭州)

  2. 在構建鏡像的操作列中單擊建立執行個體,建立ECS執行個體。

    請根據您的業務需求建立ECS執行個體,建立時請注意以下配置項。具體操作及參數說明,請參見使用自訂鏡像建立執行個體

    • 鏡像資訊已自動填滿無需再填寫。

    • 建立完成後需要訪問Nginx開發環境,因此需要分配公網IPv4地址。

    • 選擇的安全性群組入方向規則需要開放80連接埠。

  3. 執行個體建立完成後,返回執行個體列表頁面,在IP地址列複製ECS執行個體的公網IP地址。

  4. 在本地環境中開啟瀏覽器,在地址欄中輸入ECS執行個體的公網IP地址進行訪問。

    出現如下圖所示的頁面,表示Nginx已成功安裝並啟動,說明通過鏡像構建服務構建的自訂鏡像可以正常使用。

    image

    說明

    您可以遠程登入ECS執行個體,運行nginx -v命令查看已安裝的Nginx版本。