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/revoke.go:44
Args: cli.ExactArgs(1),
RunE: func(cmd *cobra.Command, args []string) error {
return revokeTrust(cmd.Context(), dockerCLI, args[0], options)
},
DisableFlagsInUseLine: true,
}
flags := cmd.Flags()
flags.BoolVarP(&options.forceYes, "yes", "y", false, "Do not prompt for confirmation")
return cmd
}
func revokeTrust(ctx context.Context, dockerCLI command.Cli, remote string, options revokeOptions) error {
imgRefAndAuth, err := trust.GetImageReferencesAndAuth(ctx, authResolver(dockerCLI), remote)
if err != nil {
return err
}
tag := imgRefAndAuth.Tag()
if imgRefAndAuth.Tag() == "" && imgRefAndAuth.Digest() != "" {
return errors.New("cannot use a digest reference for IMAGE:TAG")
}
if imgRefAndAuth.Tag() == "" && !options.forceYes {
deleteRemote, err := prompt.Confirm(ctx, dockerCLI.In(), dockerCLI.Out(), fmt.Sprintf("Confirm you would like to delete all signature data for %s?", remote))
if err != nil {
return err
}
if !deleteRemote {
return cancelledErr{errors.New("trust revoke has been cancelled")}
}
}
notaryRepo, err := newNotaryClient(dockerCLI, imgRefAndAuth, trust.ActionsPushAndPull)
if err != nil {
return err
}
if err = clearChangeList(notaryRepo); err != nil {
return errView on GitHub (pinned to e9452d6e78)
When it happens
Trigger: Thrown at cmd/docker-trust/trust/revoke.go:44 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/8ca52da4439d91f5.json.
Report an issue: GitHub.