洞察和分析
洞察和分析提供 Docker Hub 上 Docker 验证发布商 (DVP) 和 Docker 赞助开源 (DSOS) 镜像的使用情况分析。这包括对所需时间范围内的镜像和扩展使用指标的自助访问。你还可以按标签或摘要显示镜像拉取次数,并按地理位置、云提供商、客户端等获取细分数据。
提示请前往Docker 验证发布商计划或Docker 赞助开源页面了解更多关于这些计划的信息。
查看镜像的分析数据
你可以在以下 URL 的洞察和分析仪表板上找到仓库的分析数据:https://hub.docker.com/orgs/{namespace}/insights/images。该仪表板包含使用数据的可视化以及一个可以下载 CSV 格式数据的表格。
在图表中查看数据
- 选择数据粒度:每周或每月
- 选择时间间隔:3、6 或 12 个月
- 在列表中选择一个或多个仓库

提示将鼠标悬停在图表上会显示一个工具提示,显示时间点的精确数据。
分享分析数据
你可以使用图表上方的分享图标与他人分享可视化数据。这是与组织内其他人分享统计数据的一种便捷方式。

选择该图标会生成一个链接并复制到剪贴板。该链接会保留你所做的显示选择。当有人点击该链接时,洞察和分析页面会打开,并以你创建链接时设置的相同配置显示图表。
扩展分析数据
如果你在扩展市场中发布了 Docker 扩展,你还可以获取有关扩展使用情况的分析数据,这些数据以 CSV 文件的形式提供。你可以从以下 URL 的洞察和分析仪表板下载扩展 CSV 报告:https://hub.docker.com/orgs/{namespace}/insights/extensions。如果你的 Docker 命名空间包含市场中已知的扩展,你将看到一个扩展选项卡,其中列出了你的扩展的 CSV 文件。
导出分析数据
你可以从 Web 仪表板或使用DVP 数据 API导出分析数据。组织的所有成员都可以访问分析数据。
数据以可下载的 CSV 文件形式提供,格式为每周(周一至周日)或每月。每月数据从下一个日历月的第一天开始提供。你可以将此数据导入你自己的系统,也可以手动将其作为电子表格进行分析。
导出数据
按照以下步骤使用 Docker Hub 网站导出你组织镜像的使用数据
登录 Docker Hub 并选择我的 Hub。
选择你的组织并选择分析。

设置要导出分析数据的时间跨度。
摘要和原始数据的可下载 CSV 文件会显示在右侧。

使用 API 导出数据
HTTP API 端点位于:https://hub.docker.com/api/publisher/analytics/v1。在DVP 数据 API 文档中了解如何使用 API 导出数据。
数据点
以原始或摘要格式导出数据。每种格式包含不同的数据点和不同的结构。
以下部分描述了每种格式可用的数据点。添加日期列显示该字段首次引入的时间。
镜像拉取原始数据
原始数据格式包含以下数据点。CSV 文件中的每一行代表一次镜像拉取。
| 数据点 | 描述 | 添加日期 |
|---|---|---|
| 操作 | 请求类型,请参阅操作分类规则。其中之一:pull_by_tag、pull_by_digest、version_check。 | 2022 年 1 月 1 日 |
| 操作日期 | 时间戳的日期部分:YYYY-MM-DD。 | 2022 年 1 月 1 日 |
| 国家/地区 | 请求源国家/地区。 | 2022 年 1 月 1 日 |
| 摘要 | 镜像摘要。 | 2022 年 1 月 1 日 |
| HTTP 方法 | 请求中使用的 HTTP 方法,详情请参阅注册表 API 文档。 | 2022 年 1 月 1 日 |
| 主机 | 事件中使用的云服务提供商。 | 2022 年 1 月 1 日 |
| 命名空间 | Docker 组织(镜像命名空间)。 | 2022 年 1 月 1 日 |
| 参考 | 请求中使用的镜像摘要或标签。 | 2022 年 1 月 1 日 |
| 仓库 | Docker 仓库(镜像名称)。 | 2022 年 1 月 1 日 |
| 标签(可用时包含) | 仅当请求引用标签时才可用的标签名称。 | 2022 年 1 月 1 日 |
| 时间戳 | 请求日期和时间:YYYY-MM-DD 00:00:00。 | 2022 年 1 月 1 日 |
| 类型 | 事件的来源行业。其中之一:business、isp、hosting、education、null。 | 2022 年 1 月 1 日 |
| 用户代理工具 | 用户用于拉取镜像的应用程序(例如,docker 或 containerd)。 | 2022 年 1 月 1 日 |
| 用户代理版本 | 用于拉取镜像的应用程序版本。 | 2022 年 1 月 1 日 |
| 域 | 请求源域,请参阅隐私。 | 2022 年 10 月 11 日 |
| 所有者 | 拥有仓库的组织名称。 | 2022 年 12 月 19 日 |
镜像拉取摘要数据
有两种级别的摘要数据可用
- 仓库级别,每个命名空间和仓库的摘要
- 标签或摘要级别,每个命名空间、仓库和引用(标签或摘要)的摘要
摘要数据格式包含所选时间跨度的以下数据点
| 数据点 | 描述 | 添加日期 |
|---|---|---|
| 唯一 IP 地址 | 唯一 IP 地址的数量,请参阅隐私。 | 2022 年 1 月 1 日 |
| 按标签拉取 | 按摘要或按标签的 GET 请求。 | 2022 年 1 月 1 日 |
| 按摘要拉取 | 按摘要的 GET 或 HEAD 请求,或按摘要的 HEAD 请求。 | 2022 年 1 月 1 日 |
| 版本检查 | 按标签的 HEAD,后跟没有 GET 请求 | 2022 年 1 月 1 日 |
| 所有者 | 拥有仓库的组织名称。 | 2022 年 12 月 19 日 |
镜像拉取操作分类规则
操作表示与 docker pull 关联的多个请求事件。拉取按类别分组,以使数据对理解用户行为和意图更有意义。类别为
- 版本检查
- 按标签拉取
- 按摘要拉取
自动化系统会频繁检查镜像的新版本。能够区分 CI 中的“版本检查”和用户实际的镜像拉取,可以让你更深入地了解用户的行为。
下表描述了用于确定拉取背后意图的规则。要提供反馈或询问有关这些规则的问题,请填写 Google 表单。
| 起始事件 | 参考 | 后跟 | 结果操作 | 用例 | 备注 |
|---|---|---|---|---|---|
| HEAD | tag | 不适用 | 版本检查 | 用户本地机器上已存在所有层 | 这类似于用户本地已存在所有镜像层时的按标签拉取用例,但它区分了用户意图并进行了相应分类。 |
| GET | tag | 不适用 | 按标签拉取 | 用户本地机器上已存在所有层和/或镜像为单架构 | |
| GET | tag | 按不同摘要获取 | 按标签拉取 | 镜像为多架构 | 第二次按摘要 GET 必须与第一次不同。 |
| HEAD | tag | 按相同摘要 GET | 按标签拉取 | 镜像为多架构,但部分或所有镜像层已存在于本地机器上 | 按标签的 HEAD 会发送最新的摘要,后续的 GET 必须是相同的摘要。如果镜像为多架构,可能会发生额外的 GET(请参阅此表中的下一行)。如果用户不想要最新的摘要,则用户会执行按摘要的 HEAD。 |
| HEAD | tag | 按相同摘要 GET,然后按不同摘要进行第二次 GET | 按标签拉取 | 镜像为多架构 | 按标签的 HEAD 发送最新的摘要,后续的 GET 必须是相同的摘要。由于镜像为多架构,因此会按不同的摘要进行第二次 GET。如果用户不想要最新的摘要,则用户会执行按摘要的 HEAD。 |
| HEAD | tag | 按相同摘要 GET,然后按不同摘要进行第二次 GET | 按标签拉取 | 镜像为多架构 | 按标签的 HEAD 发送最新的摘要,后续的 GET 必须是相同的摘要。由于镜像为多架构,因此会按不同的摘要进行第二次 GET。如果用户不想要最新的摘要,则用户会执行按摘要的 HEAD。 |
| GET | 摘要 | 不适用 | 按摘要拉取 | 用户本地机器上已存在所有层和/或镜像为单架构 | |
| HEAD | 摘要 | 不适用 | 按摘要拉取 | 用户本地机器上已存在所有层 | |
| GET | 摘要 | 按不同摘要获取 | 按摘要拉取 | 镜像为多架构 | 第二次按摘要 GET 必须与第一次不同。 |
| HEAD | 摘要 | 按相同摘要 GET | 按摘要拉取 | 镜像为单架构和/或镜像为多架构但部分镜像已存在于本地机器上 | |
| HEAD | 摘要 | 按相同摘要 GET,然后按不同摘要进行第二次 GET | 按摘要拉取 | 镜像为多架构 |
扩展摘要数据
有两种级别的扩展摘要数据可用
- 核心摘要,包含基本扩展使用信息:扩展安装次数、卸载次数和历史总安装次数
核心摘要数据文件包含所选时间跨度的以下数据点
| 数据点 | 描述 | 添加日期 |
|---|---|---|
| 安装次数 | 扩展的安装次数 | 2024 年 2 月 1 日 |
| 总安装量 | 扩展的历史总安装次数 | 2024 年 2 月 1 日 |
| 卸载次数 | 扩展的卸载次数 | 2024 年 2 月 1 日 |
| 总卸载量 | 扩展的历史总卸载次数 | 2024 年 2 月 1 日 |
| 更新 | 扩展的更新次数 | 2024 年 2 月 1 日 |
- 高级摘要,包含高级扩展使用信息:唯一用户安装、卸载次数,唯一用户打开扩展次数。
核心摘要数据文件包含所选时间跨度的以下数据点
| 数据点 | 描述 | 添加日期 |
|---|---|---|
| 安装次数 | 扩展的安装次数 | 2024 年 2 月 1 日 |
| 唯一安装量 | 安装扩展的唯一用户数量 | 2024 年 2 月 1 日 |
| 卸载次数 | 扩展的卸载次数 | 2024 年 2 月 1 日 |
| 唯一卸载量 | 卸载扩展的唯一用户数量 | 2024 年 2 月 1 日 |
| 用法 | 扩展标签页的打开次数 | 2024 年 2 月 1 日 |
| 唯一用户 | 打开扩展标签页的唯一用户数量 | 2024 年 2 月 1 日 |
数据随时间的变化
洞察和分析服务不断改进,以提高其为发布商带来的价值。一些更改可能包括添加新的数据点,或改进现有数据以使其更有用。
数据集中的更改,例如添加或删除字段,通常仅适用于该字段首次引入的日期及以后。
请参阅数据点部分中的表格,以查看给定数据点从哪个日期开始可用。
隐私
本节包含有关隐私保护措施的信息,这些措施可确保 Docker Hub 上的内容消费者保持完全匿名。
重要Docker 绝不会作为分析数据的一部分分享任何个人身份信息 (PII)。
镜像拉取摘要数据集包含唯一 IP 地址计数。此数据点仅包含请求镜像的不同唯一 IP 地址的数量。绝不共享单个 IP 地址。
镜像拉取原始数据集包含用户 IP 域作为数据点。这是与用于拉取镜像的 IP 地址关联的域名。如果 IP 类型为 business,则该域代表与该 IP 地址关联的公司或组织(例如,docker.com)。对于任何非 business 的其他 IP 类型,该域代表用于发出请求的互联网服务提供商或托管提供商。平均而言,只有大约 30% 的所有拉取被分类为 business IP 类型(这因发布商和镜像而异)。