diff --git a/api/server/router/image/image_routes.go b/api/server/router/image/image_routes.go index 8fc1d7bf45..bcb7c744ef 100644 --- a/api/server/router/image/image_routes.go +++ b/api/server/router/image/image_routes.go @@ -378,6 +378,10 @@ func (ir *imageRouter) postImagesTag(ctx context.Context, w http.ResponseWriter, return errdefs.InvalidParameter(err) } + if _, isDigested := ref.(reference.Digested); isDigested { + return errdefs.InvalidParameter(errors.New("tag reference can't have a digest")) + } + if tag != "" { if ref, err = reference.WithTag(reference.TrimNamed(ref), tag); err != nil { return errdefs.InvalidParameter(err)