diff --git a/daemon/containerd/image.go b/daemon/containerd/image.go index b63533e02b..68c55b1812 100644 --- a/daemon/containerd/image.go +++ b/daemon/containerd/image.go @@ -341,3 +341,14 @@ func (i *ImageService) getAllImagesWithRepository(ctx context.Context, ref refer nameFilter := "^" + regexp.QuoteMeta(ref.Name()) + ":" + reference.TagRegexp.String() + "$" return i.client.ImageService().List(ctx, "name~="+strconv.Quote(nameFilter)) } + +func imageFamiliarName(img containerdimages.Image) string { + if isDanglingImage(img) { + return img.Target.Digest.String() + } + + if ref, err := reference.ParseNamed(img.Name); err == nil { + return reference.FamiliarString(ref) + } + return img.Name +} diff --git a/daemon/containerd/image_prune.go b/daemon/containerd/image_prune.go index d48a5d898e..8de4c4ef93 100644 --- a/daemon/containerd/image_prune.go +++ b/daemon/containerd/image_prune.go @@ -184,7 +184,7 @@ func (i *ImageService) pruneUnused(ctx context.Context, filterFunc imageFilterFu report.ImagesDeleted = append(report.ImagesDeleted, image.DeleteResponse{ - Untagged: img.Name, + Untagged: imageFamiliarName(img), }, )