首页 > 解决方案 > Docker无法创建缺少父级的层

问题描述

我在 docker pull 过程中遇到问题。我收到一条错误消息:

failed to register layer: Cannot create layer with missing parent c2044965b9aa73d4a5f5129c3b97369b685987e5498bc310af2ff46fde3faa08: CreateFile C:\ProgramData\Docker\windowsfilter\c2044965b9aa73d4a5f5129c3b97369b685987e5498bc310af2ff46fde3faa08: The system cannot find the file specified.

这似乎是许多不同图像中相当常见的错误。我看过很多关于这个主题的问题,但他们通常会说“图像 X 有问题”。

我正在寻找一些关于如何识别链条中断的指导。是否有某种可以应用的脚本来说明依赖链,以便我们可以识别实际缺失的依赖?

此处更新是一个失败的示例调用:

PS C:\projects\mk> docker pull scr.sitecore.com/sxp/sitecore-xp0-mssql:10.1-ltsc2019
10.1-ltsc2019: Pulling from sxp/sitecore-xp0-mssql
4612f6d0b889: Already exists
f143c6fed32d: Extracting 
==================================================>]  967.1MB/967.1MB
71224054802e: Download complete
4a1b0572623a: Download complete
......
0b1724ad259e: Download complete
bc43ada50276: Download complete
failed to register layer: Cannot create layer with missing parent b3335e31d6ec3d70228b2da5a7b7ef028ae8321146e13366926afca78e89fa6f: CreateFile C:\ProgramData\Docker\windowsfilter\b3335e31d6ec3d70228b2da5a7b7ef028ae8321146e13366926afca78e89fa6f: The system cannot find the file specified.

我尝试了以下命令未能成功解决:

docker system prune -a
docker image prune -f
docker builder prune

更新:我已经过去了。我最终通过 docker 桌面清除了数据。我必须清除几次才能成功而没有错误。虽然这意味着,我已经解决了我的问题,但我仍然想要一个更好的方法来解决这个问题。这是解决此类问题的一种非常耗时的方法。我正在寻找某种方法来识别和删除有问题的层。所以把问题留在这里。

标签: docker

解决方案


推荐阅读