docker/cli · error
errors pretty printing info
Error message
errors pretty printing info
What it means
Returned by `docker info` (pretty, non-format output) after printing everything, if any client-side or server-side errors were collected while gathering the info (info.ClientErrors / info.ServerErrors). The individual errors were already printed to stderr as `ERROR: ...` lines; this sentinel error just makes the command exit non-zero so scripts can detect the partial failure.
Source
Thrown at cli/command/system/info.go:212
}
if info.ClientInfo != nil {
prettyPrintClientInfo(streams, *info.ClientInfo)
}
for _, err := range info.ClientErrors {
fprintln(streams.Err(), "ERROR:", err)
}
fprintln(streams.Out())
fprintln(streams.Out(), "Server:")
if info.Info != nil {
prettyPrintServerInfo(streams, &info)
}
for _, err := range info.ServerErrors {
fprintln(streams.Err(), "ERROR:", err)
}
if len(info.ServerErrors) > 0 || len(info.ClientErrors) > 0 {
return errors.New("errors pretty printing info")
}
return nil
}
func prettyPrintClientInfo(streams command.Streams, info clientInfo) {
fprintlnNonEmpty(streams.Out(), " Version: ", info.Version)
fprintln(streams.Out(), " Context: ", info.Context)
fprintln(streams.Out(), " Debug Mode:", info.Debug)
if len(info.Plugins) > 0 {
fprintln(streams.Out(), " Plugins:")
for _, p := range info.Plugins {
if p.Err == nil {
fprintf(streams.Out(), " %s: %s (%s)\n", p.Name, p.ShortDescription, p.Vendor)
fprintlnNonEmpty(streams.Out(), " Version: ", p.Version)
fprintlnNonEmpty(streams.Out(), " Path: ", p.Path)
} else {
info.Warnings = append(info.Warnings, fmt.Sprintf("WARNING: Plugin %q is not valid: %s", p.Path, p.Err))View on GitHub (pinned to e9452d6e78)
Solutions
- Read the `ERROR:` lines printed just above on stderr — they contain the real cause; fix that (start the daemon, fix socket permissions, correct DOCKER_HOST).
- Check daemon connectivity: `systemctl status docker` and `docker version`.
- Remove or update broken CLI plugins in ~/.docker/cli-plugins if the errors reference plugins.
- Ensure your user can access the socket (add to the docker group or use sudo).
When it happens
Trigger: `docker info` when the daemon is unreachable (server section errors), a CLI plugin fails to load or report its version (client errors), or the /info API call partially fails — any entry in ClientErrors or ServerErrors triggers it at cli/command/system/info.go:212.
Common situations: Docker daemon not running or socket permission denied (user not in docker group); broken or outdated CLI plugins in ~/.docker/cli-plugins (e.g. stale buildx/compose binaries); DOCKER_HOST pointing at a dead endpoint; TLS/cert misconfiguration.
Related errors
- exec ID empty
- failed to parse hook template
- unexpected hook response type:
- plugin candidate path cannot be empty
- plugin SchemaVersion version cannot be empty
AI-assisted analysis of docker/cli@e9452d6e78 (2026-08-01).
Data as JSON: /data/errors/1b04e6a9a1cc9fe7.json.
Report an issue: GitHub.