Skip to content

Make "docker debug" available for Docker Engine (standalone CLI, without Docker Desktop) #893

@pguinet

Description

@pguinet

Tell us about your request

Make the docker debug command available as part of Docker Engine / Docker CE CLI,
not only as a Docker Desktop feature.

Which service(s) is this request for?

Docker Engine (Linux), Docker CLI

Tell us about the problem you're trying to solve

When running Docker on Linux servers (production, staging, CI/CD), we frequently
need to debug containers built from minimal/distroless images that contain no shell
or standard tools. The current workflow requires installing packages inside the
container (which may not even have a package manager), or rebuilding the image with
debug tools — both approaches are slow, intrusive, and go against the best practice
of keeping images small and secure.

docker debug elegantly solves this problem: it injects a Nix-based toolbox into
any container or image without modifying it. However, this command is only available
with Docker Desktop
, which is not installable on headless Linux servers — the vast
majority of Docker production hosts run Docker Engine only, with no GUI.

The --host flag allows remote debugging from a Docker Desktop client via SSH, but
this requires having Docker Desktop installed somewhere, which is not always possible
or practical in server-only environments.

Describe the solution you'd like

Ship docker debug (or an equivalent standalone binary) as part of the Docker Engine
/ Docker CLI packages available on Linux. This would allow server administrators and
DevOps engineers to debug containers directly on the host where they run, without
needing Docker Desktop.

Are you currently working around the issue?

Yes, with significant friction:

  • docker exec — only works if the container has a shell and the needed tools
  • docker cp + manual inspection — cumbersome for interactive debugging
  • Rebuilding images with debug tools — slow, pollutes the image, not viable in
    production
  • nsenter — requires root access and deep knowledge of Linux namespaces
  • Third-party tools (e.g., cdebug, kubectl debug) — partial solutions that
    lack the polish and Nix-based toolbox of docker debug

Additional context

  • The original Docker Labs Debug Tools extension (discussed in [Docker Labs Debug Tools] Feature requests, discussions, feedback #524) had a community
    request for standalone usage (5 upvotes). The extension was later folded into
    docker debug but made Docker Desktop-only.
  • kubectl debug (ephemeral containers) provides similar functionality for
    Kubernetes. Having docker debug available for standalone Docker would bring
    feature parity.
  • This would align with Docker's mission of making container workflows accessible
    to all developers, not just those with Docker Desktop.

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