教學課程:透過映像產生器主控台精靈建立具有輸出 Docker 容 Image Builder 的映像管線 - EC2 Image Builder

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

教學課程:透過映像產生器主控台精靈建立具有輸出 Docker 容 Image Builder 的映像管線

本教學將逐步引導您建立自動化管道,以使用 [建立映像管道主控台] 精靈來建置和維護自訂 EC2 Image Builder Docker 映像。為了協助您有效率地完成這些步驟,預設設定可用時會使用這些設定,並略過可選區段。

步驟 1:指定管線詳細資訊

  1. 開啟 EC2 Image Builder 主控台,位於 https://console.aws.amazon.com/imagebuilder/

  2. 若要開始建立管線,請選擇 [建立映像管線]。

  3. 在「一」區段中,輸入您的管線名稱 (必填)。

  4. 在 [建立排程] 區段中,您可以保留 [排程] 選項的預設值。請注意,預設排程所顯示的時區為世界協調時間 (UTC)。如需有關 UTC 時間的詳細資訊,並尋找您所在時區的偏移量,請參閱時區縮寫 — 全球清單

    對於「相依性更新」設定,請選擇「如果有相依性更新,則在排程的時間執行管線」選項。此設定會讓您的管道在開始建置之前檢查是否有更新。如果沒有更新,則會略過排程的管線建置。

    注意

    若要確保管線如預期般辨識相依性更新和組建,您必須針對基礎映像和元件使用語意版本化 (x.x.x)。若要進一步瞭解 Image Builder 資源的語意版本控制,請參閱Image Builder 中的語義版本

  5. 選擇 [下一步] 繼續進行下一個步驟。

步驟 2:選擇食譜

  1. Image Builder 預設為「使用方案」區段中的現有案。第一次使用時,請選擇「建立新配方」選項。

  2. 在 [映像類型] 區段中,選擇 Docker 映像選項以建立容器管道,以產生 Docker 映像並將其散佈到目標區域中的 Amazon ECR 儲存庫。

  3. 在「一」區段中,輸入下列必要的方塊:

    • 名稱 — 您的食譜名稱

    • 版本-您的食譜版本(使用格式<major>。 <minor>。 <patch>,其中主要、次要和修補為整數值)。新食譜一般從開始1.0.0

  4. 在 [來源映像檔] 區段中,保留 [選取映像檔]、[映像作業系統 (OS)] 和 [映像來源] 的預設值。這會產生由 Amazon 管理的 Amazon Linux 2 容器映像列表,供您從基本映像中選擇。

    1. 從 [影像名稱] 下拉式清單中,選擇影像。

    2. 保留自動版本控制選項的預設值 (使用最新的可用作業系統版本)。

      注意

      此設定可確保管線對基礎映像使用語意版本控制,以偵測自動排程工作的相依性更新。若要進一步瞭解 Image Builder 資源的語意版本控制,請參閱Image Builder 中的語義版本

  5. 在 [件] 區段中,您必須至少選擇一個組建元件。

    建置元件 — Amazon Linux 面板中,您可以瀏覽頁面上列出的元件。使用右上角的分頁控制項,瀏覽基本映像作業系統可用的其他元件。您也可以搜尋特定元件,或使用 [元件管理員] 建立您自己的組建元件。

    在此教學課程中,請選擇使用最新安全性更新來更新 Linux 的元件,如下所示:

    1. 在面板頂端的搜尋列update中輸入文字,以篩選結果。

    2. 選取update-linux建置元件的核取方塊。

    3. 向下捲動,然後在「選取的元件」清單的右上角選擇「全部展開」

    4. 保留版本控制選項的預設值 (使用最新可用的元件版本)。

      注意

      此設定可確保管線對所選元件使用語意版本化,以偵測自動排程工作的相依性更新。若要進一步瞭解 Image Builder 資源的語意版本控制,請參閱Image Builder 中的語義版本

      如果您選取了具有輸入參數的元件,您也會在此區域中看到參數。本教學課程不介紹參數。如需有關在元件中使用輸入參數,並在方法中設定這些參數的詳細資訊,請參閱教學課程:使用 EC2 Image Builder 的輸入參數建立自訂元件

    重新排序元件 (可選)

    如果您已選擇要包含在映像中的多個元件,則可以使用 drag-and-drop 動作將它們重新排列為在建置程序期間執行的順序。

    注意

    CIS 強化元件不遵循 Image Builder 配方中的標準元件排序規則。CIS 強化元件一律會持續執行,以確保基準測試會針對您的輸出影像執行。

    1. 向上捲動至可用元件清單。

    2. 選取update-linux-kernel-mainline建置元件 (或您選擇的任何其他元件) 的核取方塊。

    3. 向下捲動至 [選取的元件] 清單,以查看至少有兩個結果。

    4. 新增的元件可能未展開其版本控制。若要展開「版本控制」選項,您可以選擇「版本控制」選項旁邊的箭頭,或者您可以將「全部展開」開關切換為關閉或開啟,以展開所有選取元件的版本控制。

    5. 選擇其中一個元件,然後向上或向下拖曳以變更元件的執行順序。

    6. 若要移除update-linux-kernel-mainline元件,請X從元件方塊的右上角選擇。

    7. 重複上一個步驟,移除您可能已加入的任何其他元件,僅保留選取的update-linux元件。

  6. 在「Docker 檔案範本」區段中,選取「使用範例」選項。在「內」面板中,請注意 Image Builder 根據容器映像方案放置組建資訊或指令碼的內容變數。

    依預設,Image Builder 會在 Docker 檔案中使用下列上下文變數。

     

    父母圖像(必填)

    在建置階段,此變數會解析為方案的基礎映像檔。

    範例:

    FROM {{{ imagebuilder:parentImage }}}
    環境 (如果已指定元件,則需要)

    此變數將解析為執行元件的指令碼。

    範例:

    {{{ imagebuilder:environments }}}
    組件(可選)

    Image Builder 會針對容器配方所包含的元件,解析組建和測試元件指令碼。此變數可以放置在 Docker 檔案中的任何位置,位於環境變數之後。

    範例:

    {{{ imagebuilder:components }}}
  7. 在「目標儲存庫」區段中,指定您建立的 Amazon ECR 儲存庫名稱作為本教學的先決條件。此儲存庫可作為管線執行所在區域 (區域 1) 中發佈組態的預設設定。

    注意

    目標儲存庫必須存在於所有目標區域的 Amazon ECR 中,才能發佈。

  8. 選擇 [下一步] 繼續進行下一個步驟。

步驟 3:定義基礎結構組態-選用

Image Builder 會在您的帳戶中啟動 EC2 執行個體,以自訂映像並執行驗證測試。基礎結構組態設定會指定建置程序 AWS 帳戶 期間將在您的執行個體中執行的基礎結構詳細資料。

在 [基礎結構組態] 區段中,[組態] 選項預設為Create infrastructure configuration using service defaults。這會建立 IAM 角色和關聯的執行個體設定檔,建置執行個體會使用這些設定檔來設定容器映像檔。您也可以建立自己的自訂基礎結構組態,或使用已建立的設定。如需有關基礎設施組態設定的詳細資訊,請參閱 EC2 Image Builder API 參考CreateInfrastructureConfiguration中的。

在本教程中,我們使用的是默認設置。

  • 選擇 [下一步] 繼續進行下一個步驟。

步驟 4:定義發佈設定-選擇性

發佈設定由目標區域和目標 Amazon ECR 儲存庫名稱組成。輸出泊塢視窗映像會部署到每個區域中具名的 Amazon ECR 儲存庫。

在 [發佈設定] 區段中,[組態] 選項預設為Create distribution settings using service defaults。此選項會將輸出 Docker 映像分發到管道執行所在區域 (區域 1) 的容器配方中指定的 Amazon ECR 儲存庫。如果您選擇Create new distribution settings,您可以覆寫目前「區域」的 ECR 存放庫,並新增更多「區域」以進行分佈。

在本教程中,我們使用的是默認設置。

  • 選擇 [下一步] 繼續進行下一個步驟。

步驟 5:檢視

複查」區段會顯示您已設定的所有設定。若要編輯任何指定區段中的資訊,請選擇步驟區段右上角的 編輯」按鈕。例如,如果您要變更管線名稱,請選擇「步驟 1:管線詳細資訊」區段右上角的 「編輯」按鈕。

  1. 檢閱設定後,請選擇「建立管道」以建立管道。

  2. 您可以在頁面頂端看到成功或失敗訊息,因為您的資源是針對發佈設定、基礎結構組態、新方案和管道建立的。若要查看資源的詳細資訊 (包括資源識別碼),請選擇 [檢視詳細資料]。

  3. 檢視資源的詳細資料之後,您可以從導覽窗格中選擇資源類型,以檢視其他資源的詳細資訊。例如,若要查看新管道的詳細資訊,請從導覽窗格中選擇「影像管線」。如果建置成功,則新管線會顯示在「影像管線」清單中。

步驟 6:清除

您的 Image Builder 環境就像您的家一樣,需要定期維護以幫助您找到所需的內容,並完成任務,而不必涉及混亂。請務必定期清理您為測試而建立的暫存資源。否則,您可能會忘記這些資源,然後,不記得它們用於什麼。到那時,如果您可以安全地擺脫它們,可能還不清楚。

提示

若要避免刪除資源時發生相依性錯誤,請務必依下列順序刪除資源:

  1. 影像管線

  2. 圖片食譜

  3. 所有剩餘資源

若要清理您為此教學課程建立的資源,請依照下列步驟執行:

刪除配管
  1. 若要查看在您的帳戶下建立的建置管線清單,請從導覽窗格中選擇 [映像管線]。

  2. 選取「配管名稱」(Pipeline name) 旁的核取方塊,以選取要刪除的配管。

  3. 在「影像管線」面板頂端的「動作」功能表上,選擇「刪除」。

  4. 若要確認刪除,請Delete在方塊中輸入,然後選擇刪除

刪除容器配方
  1. 若要查看您帳戶下建立的容器配方清單,請從功能窗格中選擇 [容器配方]。

  2. 選取 [配方名稱] 旁的核取方塊,以選取您要刪除的食譜。

  3. 在「容器配方」面板頂端的「動作」功能表上,選擇「刪除方案」。

  4. 若要確認刪除,請Delete在方塊中輸入,然後選擇刪除

刪除基礎結構組
  1. 若要查看在您帳戶下建立的基礎結構組態清單,請從導覽窗格中選擇 [基礎結構設定]。

  2. 選取 [組態名稱] 旁的核取方塊,以選取您要刪除的基礎結構組態。

  3. 在「基礎結構設定」面板頂端,選擇「刪除」。

  4. 若要確認刪除,請Delete在方塊中輸入,然後選擇刪除

刪除散佈設定
  1. 若要查看在您的帳戶下建立的發佈設定清單,請從功能窗格中選擇 [發佈設定]。

  2. 選取「組態名稱」旁邊的核取方塊,以選取您為此教學課程建立的散佈設定。

  3. 在「分佈」設定面板頂端,選擇「刪除」。

  4. 若要確認刪除,請Delete在方塊中輸入,然後選擇刪除

刪除圖像

請遵循下列步驟來確認您已刪除從教學課程管線建立的任何影像。本教學課程不太可能建立映像檔,除非您根據建置排程建立管道以來,已經過足夠的時間。

  1. 若要查看在您帳戶下建立的影像清單,請從導覽窗格中選擇 [圖片]。

  2. 為您要移除的影像選擇映像版本。這會開啟 [映像組建版本] 頁面。

  3. 針對您要刪除的任何映像,選取 [版本] 旁邊的核取方塊。您可以一次選取多個映像版本。

  4. 在「影像建置版本」面板頂端,選擇「刪除版本」。

  5. 若要確認刪除,請Delete在方塊中輸入,然後選擇刪除