Overview

This page contains information on how to diagnose and troubleshoot Docker Desktop issues and how to check the logs

Troubleshoot menu

To navigate to Troubleshoot either:

  • Select the Docker menu whale menu and then Troubleshoot
  • Select the Troubleshoot icon near the top-right corner of Docker Dashboard

Troubleshoot menu in Docker Desktop

The Troubleshoot page contains the following options:

  • Restart Docker Desktop. Select to restart Docker Desktop.

  • Support. Users with a paid Docker subscription can use this option to send a support request. Other users can use this option to diagnose any issues in Docker Desktop. For more information, see Diagnose and feedback and Support.

  • Reset Kubernetes cluster. Select to delete all stacks and Kubernetes resources. For more information, see Kubernetes.

  • Clean / Purge data. This option resets all Docker data without a reset to factory defaults. Selecting this option results in the loss of existing settings.

  • Reset to factory defaults: Choose this option to reset all options on Docker Desktop to their initial state, the same as when Docker Desktop was first installed.

If you are a Mac user, you also have the option to Uninstall Docker Desktop from your system.

Diagnose

Diagnose from the app

Make sure you are signed in to Docker Desktop and your Docker Hub account.

  1. From Troubleshoot, select Get support. This opens the in-app Support page and starts collecting the diagnostics. Diagnose & Feedback
  2. When the diagnostics collection process is complete, select Upload to get a Diagnostic ID.
  3. When the diagnostics are uploaded, Docker Desktop prints a diagnostic ID. Copy this ID.
  4. If you have a paid Docker subscription, select Contact Support. This opens the Docker Desktop support form. Fill in the information required and add the ID you copied in step three to the Diagnostics ID field.
  5. Select Submit to request Docker Desktop support.

    Note

    You must be signed in to Docker Desktop using your Pro, Team, or Business tier credentials to access the support form. For information on what’s covered as part of Docker Desktop support, see Support.

  6. If you don’t have a paid Docker subscription, select Upgrade to benefit from Docker Support to upgrade your existing account. Alternatively, select Report a Bug to open a new Docker Desktop issue on GitHub. Complete the information required and ensure you add the diagnostic ID you copied earlier.
  7. Select submit new issue to create a new issue.

Diagnose from the terminal

In some cases, it is useful to run the diagnostics yourself, for instance, if Docker Desktop cannot start.

First, locate the com.docker.diagnose tool. It is located at:

$ C:\Program Files\Docker\Docker\resources\com.docker.diagnose.exe
$ /Applications/Docker.app/Contents/MacOS/com.docker.diagnose
$ /opt/docker-desktop/bin/com.docker.diagnose

To create and upload diagnostics, run:

$ <tool location> gather -upload

After the diagnostics have finished, the terminal displays your diagnostics ID. The diagnostics ID is composed of your user ID and a timestamp. Ensure you provide the full diagnostics ID, and not just the user ID.

To view the contents of the diagnostic file, run:

$ open /tmp/BE9AFAAF-F68B-41D0-9D12-84760E6B8740/20190905152051.zip
$ unzip –l /tmp/BE9AFAAF-F68B-41D0-9D12-84760E6B8740/20190905152051.zip

If you have a paid Docker subscription, open the Docker Desktop support form. Fill in the information required and add the ID to the Diagnostics ID field. Select Submit to request Docker Desktop support.

Self-diagnose tool

Docker Desktop contains a self-diagnose tool which helps you to identify some common problems.

First, locate the com.docker.diagnose tool. It is located at:

$ C:\Program Files\Docker\Docker\resources\com.docker.diagnose.exe
$ /Applications/Docker.app/Contents/MacOS/com.docker.diagnose
$ /opt/docker-desktop/bin/com.docker.diagnose

To run the self-diagnose tool, run:

$ <tool location> check

The tool runs a suite of checks and displays PASS or FAIL next to each check. If there are any failures, it highlights the most relevant at the end of the report.

You can then create an issue on GitHub:

Check the logs

In addition to using the diagnose option to submit logs, you can browse the logs yourself.

In a terminal

To watch the live flow of Docker Desktop logs in the command line, run the following script from your preferred shell.

$ pred='process matches ".*(ocker|vpnkit).*" || (process in {"taskgated-helper", "launchservicesd", "kernel"} && eventMessage contains[c] "docker")'
$ /usr/bin/log stream --style syslog --level=debug --color=always --predicate "$pred"

Alternatively, to collect the last day of logs (1d) in a file, run:

$ /usr/bin/log show --debug --info --style syslog --last 1d --predicate "$pred" >/tmp/logs.txt

In the Console app

Mac provides a built-in log viewer, named Console, which you can use to check Docker logs.

The Console lives in /Applications/Utilities. You can search for it with Spotlight Search.

To read the Docker app log messages, type docker in the Console window search bar and press Enter. Then select ANY to expand the drop-down list next to your docker search entry, and select Process.

Mac Console search for Docker app

You can use the Console Log Query to search logs, filter the results in various ways, and create reports.

View the Docker daemon logs

Refer to the Read the daemon logs section to learn how to view the Docker Daemon logs.

In a terminal

You can access Docker Desktop logs by running the following command:

$ journalctl --user --unit=docker-desktop

You can also find the logs for the internal components included in Docker Desktop at $HOME/.docker/desktop/log/.

View the Docker daemon logs

Refer to the Read the daemon logs section to learn how to view the Docker Daemon logs.

What’s next?