擴充功能映像檔標籤
目錄
擴充功能使用映像檔標籤來提供額外資訊,例如標題、說明、螢幕截圖等等。
這些資訊隨後會顯示為擴充功能的概覽,讓使用者可以選擇安裝。

您可以在擴充功能的 Dockerfile 中定義 映像檔標籤。
重要如果
Dockerfile中缺少任何一個**必要**標籤,Docker Desktop 會將該擴充功能視為無效,且不會將其列入 Marketplace 中。
以下是您在建置擴充功能時可以或需要指定的標籤清單:
| 標籤 | 必要 | 描述 | 範例 |
|---|---|---|---|
org.opencontainers.image.title | 是 | 人類可讀的映像檔標題(字串)。這會顯示在 Docker Desktop 的使用者介面中。 | my-extension |
org.opencontainers.image.description | 是 | 映像檔中所封裝軟體的人類可讀說明(字串) | 此擴充功能很棒。 |
org.opencontainers.image.vendor | 是 | 發行實體、組織或個人的名稱。 | Acme, Inc. |
com.docker.desktop.extension.api.version | 是 | 擴充功能相容的 Docker Extension 管理器版本。它必須遵循 語意化版本控制 (Semantic Versioning)。 | 特定版本(如 0.1.0)或限制表達式:>= 0.1.0, >= 1.4.7, < 2.0。對於您的第一個擴充功能,可以使用 docker extension version 來查詢 SDK API 版本,並指定 >= <SDK_API_VERSION>。 |
com.docker.desktop.extension.icon | 是 | 擴充功能圖示(格式:.svg .png .jpg) | https://example.com/assets/image.svg |
com.docker.extension.screenshots | 是 | 一個 JSON 陣列,包含圖片網址及顯示給使用者的替代文字(依照它們在元資料中出現的順序排列),位於擴充功能的詳細資訊頁面中。注意:螢幕截圖的建議尺寸為 2400x1600 像素。 | [{"alt":"圖片 1 的替代文字", "url":"https://example.com/image1.png"}, {"alt":"圖片 2 的替代文字", "url":"https://example.com/image2.jpg"}] |
com.docker.extension.detailed-description | 是 | 關於該擴充功能的純文字或 HTML 格式額外資訊,將顯示在詳細資訊對話框中。 | 我的詳細說明 或 <h1>我的詳細說明</h1> |
com.docker.extension.publisher-url | 是 | 要在詳細資訊對話框中顯示的發佈者網站網址。 | https://example.com |
com.docker.extension.additional-urls | 否 | 一個 JSON 陣列,包含標題及額外網址(依照它們在元資料中出現的順序排列),顯示給擴充功能詳細資訊頁面的使用者。Docker 建議您在適用的情況下顯示以下連結:說明文件、支援、服務條款及隱私權政策連結。 | [{"title":"說明文件","url":"https://example.com/docs"}, {"title":"支援","url":"https://example.com/bar/support"}, {"title":"服務條款","url":"https://example.com/tos"}, {"title":"隱私權政策","url":"https://example.com/privacy"}] |
com.docker.extension.changelog | 是 | 純文字或 HTML 格式的變更日誌,僅包含當前版本的變更內容。 | 擴充功能變更日誌 或 <p>擴充功能變更日誌<ul> <li>新功能 A</li> <li>功能 B 的錯誤修正</li></ul></p> |
com.docker.extension.account-info | 否 | 使用者是否需要註冊 SaaS 平台才能使用該擴充功能的某些功能。 | 如果需要,請填寫 required,否則保持為空。 |
com.docker.extension.categories | 否 | 您的擴充功能所屬的 Marketplace 分類清單:ci-cd、container-orchestration、cloud-deployment、cloud-development、database、kubernetes、networking、image-registry、security、testing-tools、utility-tools、volumes。如果您未指定此標籤,使用者在透過分類篩選時將無法在 Extensions Marketplace 中找到您的擴充功能。於 2022 年 9 月 22 日前發佈到 Marketplace 的擴充功能已由 Docker 自動分類。 | 若有多個分類,請以逗號分隔,例如:kubernetes,security;若只有單一分類,則直接填寫,例如 kubernetes。 |
提示Docker Desktop 會將 CSS 樣式套用到提供的 HTML 內容。您可以確保它在 Marketplace 內正確呈現。建議您遵循 樣式設計指南。
在 Marketplace 中預覽擴充功能
您可以驗證映像檔標籤是否如預期般呈現。
當您建立並安裝未發佈的擴充功能時,您可以在 Marketplace 的「已管理 (Managed)」標籤頁中預覽它。您可以查看擴充功能標籤在清單及詳細資訊頁面中的呈現方式。
預覽已在 Marketplace 中列出的擴充功能
當您安裝已在 Marketplace 中發佈的擴充功能本機映像檔時(例如使用
latest標籤),您的本機映像檔不會被檢測為「未發佈」。您可以重新標記 (re-tag) 您的映像檔,以獲得一個未被列為已發佈擴充功能的不同映像檔名稱。請使用
docker tag org/published-extension unpublished-extension,然後執行docker extension install unpublished-extension。
