docker/cli ยท error
cannot use a digest reference for IMAGE:TAG
Error message
cannot use a digest reference for IMAGE:TAG
What it means
Error "cannot use a digest reference for IMAGE:TAG" thrown in docker/cli.
Source
Thrown at cmd/docker-trust/trust/sign.go:139
return err
}
err = trust.AddToAllSignableRoles(notaryRepo, &target)
if err == nil {
prettyPrintExistingSignatureInfo(out, existingSigInfo)
err = notaryRepo.Publish()
}
if err != nil {
return fmt.Errorf("failed to sign %s:%s: %w", imgRefAndAuth.RepoInfo().Name.Name(), tag, err)
}
_, _ = fmt.Fprintf(out, "Successfully signed %s:%s\n", imgRefAndAuth.RepoInfo().Name.Name(), tag)
return nil
}
func validateTag(imgRefAndAuth trust.ImageRefAndAuth) error {
tag := imgRefAndAuth.Tag()
if tag == "" {
if imgRefAndAuth.Digest() != "" {
return errors.New("cannot use a digest reference for IMAGE:TAG")
}
return fmt.Errorf("no tag specified for %s", imgRefAndAuth.Name())
}
return nil
}
func checkLocalImageExistence(ctx context.Context, apiClient client.APIClient, imageName string) error {
_, err := apiClient.ImageInspect(ctx, imageName)
return err
}
func createTarget(notaryRepo notaryclient.Repository, tag string) (notaryclient.Target, error) {
target := ¬aryclient.Target{}
var err error
if tag == "" {
return *target, errors.New("no tag specified")
}
target.Name = tagView on GitHub (pinned to e9452d6e78)
When it happens
Trigger: Thrown at cmd/docker-trust/trust/sign.go:139 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of docker/cli@e9452d6e78 (2026-08-01).
Data as JSON: /data/errors/47336807c99e41c2.json.
Report an issue: GitHub.