近期有部分用户反馈,尝试拉取 dhi 相关镜像时出现 404 not found 错误。经技术排查与协议层分析,现将相关情况说明如下:
一、现象说明
目前访问与拉取行为表现为:
- Docker Hub 上 dhi namespace 已无公开仓库;
- 执行
docker pull dhi/clickhouse-server返回 not found
以上情况并非网络异常或镜像故障。
二、原因说明
Docker Hardened Images(简称 DHI)已被纳入 Docker 官方企业级 Hardened Images 产品体系。
根据当前访问行为与页面跳转结果:
- dhi.io 已跳转至 Docker Hardened Images Catalog 页面;
- 拉取镜像提示需开启 30 天试用或企业订阅;
- OCI Registry Token 服务拒绝向普通 Docker 账号签发访问凭证。
这表明:
DHI 已不再作为公开 Docker Hub 镜像仓库分发,其镜像访问基于商业授权机制控制。
因此,普通 Docker 账号无法匿名或直接拉取 DHI 相关镜像或 OCI 制品。
三、对镜像拉取与代理的影响
由于:
- 上游 Registry 不接受匿名访问;
- 未授权账号无法获取 Bearer Token;
- 镜像 Manifest 与 Blob 均需鉴权;
本服务无法对 DHI 镜像提供:
- 公共加速
- 匿名镜像代理
- 缓存同步
该限制源于上游分发策略调整,并非技术故障。
四、如需使用 DHI 的建议方案
如您确实需要 Docker Hardened Images:
- 建议通过 Docker 官方渠道申请试用或企业订阅;
- 确认账号具备 Hardened Images 访问权限;
- 在具备授权后,可通过自有凭证进行私有镜像同步或内部制品管理。
如仅需安全加固基础镜像,也可考虑:
- 官方 LTS 基础镜像
- Distroless 镜像
- 自行构建安全基线镜像并结合扫描工具进行加固
五、总结
当前 DHI 无法拉取的原因是 Docker 官方分发策略调整,已转为授权访问模式。
该问题不属于网络异常或镜像服务问题。
如后续 Docker 官方调整分发政策,我们将第一时间跟进并更新支持情况。
感谢您的理解与支持。
—— 轩辕镜像技术团队
免责声明
本博客文章所提供的内容、技术方案、配置示例及部署指南等信息,仅供学习交流和技术参考使用。文章内容基于发布时的技术环境和版本信息编写,可能因时间推移、技术更新或环境差异而存在不适用的情况。
用户在参考本博客内容进行部署操作前,应当充分了解相关技术风险,并建议在测试环境中进行充分验证和测试,确认无误后再考虑在生产环境中使用。生产环境部署前,请务必进行数据备份,并制定相应的回滚方案。
用户因使用本博客内容进行部署操作而产生的任何损失、数据丢失、系统故障、安全风险或其他问题,均由用户自行承担全部责任。轩辕镜像官方不对因使用本博客内容而产生的任何直接或间接损失承担责任。
本免责声明的最终解释权归轩辕镜像官方所有。
