Image Customizer 是一款開源工具,可以修改現有的 Azure Linux 映像檔以符合你的特定情境。 它利用 chroot 迴回區塊裝置,在不啟動虛擬機(VM)的情況下執行自訂化,使流程快速、可靠且易於整合進 CI/CD 工作流程。 這也是用來建置官方 Azure Linux 映像檔的技術。 完整組態參考及進階使用方法,請參閱 影像自訂器文件。
Note
Azure Image Builder(AIB)與 Image Customizer 的整合尚未推出。 目前,你可以直接使用 Image Customizer 來自訂 Azure Linux 映像檔。
使用 Image Customizer,你可以:
- 新增或移除套件。
- 新增檔案或目錄。
- 設定使用者與系統設定。
- 套用自訂分割區配置。
- 產出多種格式的輸出影像。
圖片自訂器也支援巢狀自訂,讓你能進一步自訂已自訂的圖片。 對於建立多個映像檔的團隊,建議先建立共用的自訂基礎映像檔,以降低維護負擔。
Note
Azure Linux 4.0 目前已進入 preview,僅限於評估與測試用途。 它不適合生產使用。
先決條件
- Docker 安裝在你的主機上。
- 基礎映像:任何Azure Linux 映像檔(來自Azure Marketplace或你已維護的)。
- 設定檔:描述你修改內容的 YAML 或 JSON 檔案。
支援的主機系統
你可以在以下平台執行影像自訂器:
- Azure Linux
- Ubuntu 22.04 版本
使用影像自訂工具
影像自訂器以容器形式執行,發佈至 Microsoft Artifact Registry(MCR)。
可用標籤列表
請使用以下指令列出影像客製化容器可用的標籤:
curl -s "https://mcr.microsoft.com/v2/azurelinux/imagecustomizer/tags/list" | jq '.tags[]'
自訂圖片
透過執行映像自訂工具容器,以及掛載到容器中的基礎映像和設定檔,來自訂映像。 例如:
docker run --rm \
--privileged \
-v "<shared-dir>:z" \
-v "/dev:/dev" \
"mcr.microsoft.com/azurelinux/imagecustomizer:latest" \
imagecustomizer \
--image-file <base-image.vhdx> \
--config-file <config-file.yaml> \
--output-image-format raw \
--output-image-file <output-image.raw> \
--build-dir "/tmp"
替換以下數值:
| 預留位置 | Description |
|---|---|
<shared-dir> |
指向包含你基礎映像檔和設定檔的目錄的絕對路徑。 自訂圖片也寫在這裡。 |
<base-image.vhdx> |
要修改的基礎映像檔路徑。 |
<config-file.yaml> |
描述你修改內容的設定檔路徑。 |
<output-image.raw> |
自訂輸出影像的路徑。 |
相關內容
欲了解更多資訊,請參閱 影像自訂器文件。