扩展镜像标签
目录
扩展使用镜像标签来提供额外信息,例如标题、描述、截图等。
然后,该信息将作为扩展的概览显示,供用户选择是否安装。

您可以在扩展的Dockerfile中定义
镜像标签。
重要
如果
Dockerfile中缺少任何必需的标签,Docker Desktop 会将该扩展视为无效,并不会在应用市场中列出它。
以下是构建扩展时可以或需要指定的标签列表:
| 标签 | 必需 | 描述 | 示例 |
|---|---|---|---|
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 扩展管理器版本。该版本必须遵循 语义化版本规范。 | 特定版本,例如 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://docs.docker.com/assets/images/engine.svg |
com.docker.extension.screenshots | 是 | 一个包含图片URL的JSON数组,以及在扩展程序详情页面上显示给用户的替代文本(按其在元数据中出现的顺序排列)。注意:建议截图尺寸为2400x1600像素。 | [{"alt":"alternative text for image 1", "url":"https://foo.bar/image1.png"}, {"alt":"alternative text for image2", "url":"https://foo.bar/image2.jpg"}] |
com.docker.extension.detailed-description | 是 | 有关扩展的额外信息(纯文本或HTML格式),将显示在详细信息对话框中。 | My detailed description or <h1>My detailed description</h1> |
com.docker.extension.publisher-url | 是 | 在详细信息对话框中显示的发布者网站URL。 | https://foo.bar |
com.docker.extension.additional-urls | No | 以JSON数组形式呈现的标题及附加URL,将按您元数据中定义的顺序在扩展的详情页面中向用户展示。Docker建议您在适用的情况下展示以下链接:文档、支持、服务条款和隐私政策链接。 | [{"title":"Documentation","url":"https://foo.bar/docs"}, {"title":"Support","url":"https://foo.bar/support"}, {"title":"Terms of Service","url":"https://foo.bar/tos"}, {"title":"Privacy policy","url":"https://foo.bar/privacy-policy"}] |
com.docker.extension.changelog | 是 | 仅包含当前版本变更内容的纯文本或HTML格式的更新日志。 | Extension changelog or <p>Extension changelog<ul> <li>New feature A</li> <li>Bug fix on feature B</li></ul></p> |
com.docker.extension.account-info | No | 用户是否需要注册到 SaaS 平台才能使用扩展的某些功能。 | required 如果条件满足,则留空;否则保留原值。 |
com.docker.extension.categories | No | 您的扩展程序所属的市场类别列表:ci-cd、container-orchestration、cloud-deployment、cloud-development、database、kubernetes、networking、image-registry、security、testing-tools、utility-tools、volumes。如果您未指定此标签,用户将无法在扩展市场中按类别筛选时找到您的扩展程序。2022年9月22日之前发布至市场的扩展程序已由Docker自动完成分类。 | 指定为逗号分隔的值,当有多个类别时,例如:kubernetes,security;或单个值,例如:kubernetes。 |
提示
Docker Desktop 会对提供的 HTML 内容应用 CSS 样式。您可以确保其在 应用市场中正确渲染。建议您遵循 样式设计指南。
预览扩展在应用市场中的效果
你可以验证镜像标签是否按预期呈现。
当您创建并安装未发布的扩展时,可以在 Marketplace 的 已管理 选项卡中预览该扩展。您可以看到扩展标签在列表及扩展详情页中的显示效果。
预览已在商店中列出的扩展
当您安装已在 Marketplace 中发布的扩展的本地镜像(例如带有标签
latest的镜像)时,您的本地镜像不会被识别为“未发布”状态。您可以重新标记您的镜像,以获得一个未列为已发布扩展的其他镜像名称。 使用
docker tag org/published-extension unpublished-extension,然后使用docker extension install unpublished-extension。
