Skip to content

Expose resolved Docker endpoint and failure reason in diagnostics #65

@agustif

Description

@agustif

Summary

Coasts now has better Docker endpoint resolution, but when Docker is unavailable the daemon and CLI still surface mostly generic errors like "Docker is not available".

For operators, the missing detail is:

  • which endpoint source was chosen (DOCKER_CONTEXT, DOCKER_HOST, config currentContext, default local)
  • which endpoint host was attempted
  • why connection failed

Why this matters

This is especially important on machines that switch Docker providers or contexts (OrbStack, Docker Desktop, Colima, Rancher Desktop). Without the resolved endpoint details, users have to infer what coastd tried from logs.

Proposed scope

Small diagnostics-only slice:

  • keep transport behavior unchanged
  • store the resolved Docker endpoint summary and last connection error in daemon startup state
  • expose that summary through /api/v1/docker/info
  • improve coast doctor connection failure output to include the resolved endpoint source/host

Out of scope

  • SSH context support
  • transport changes beyond the existing resolver
  • daemon auto-refresh / automatic re-resolution after startup

If this direction looks good, I can send a focused PR stacked on the Docker-context resolver branch.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions