---
description: Explore common troubleshooting topics for Docker Desktop
keywords: Linux, Mac, Windows, troubleshooting, topics, Docker Desktop
title: Troubleshoot topics for Docker Desktop
linkTitle: Common topics
toc_max: 3
tags: [ Troubleshooting ]
weight: 10
aliases:
- /desktop/troubleshoot/topics/
- /manuals/desktop/troubleshoot-and-support/troubleshoot/workarounds/
---
> [!TIP]
>
> If you do not find a solution in troubleshooting, browse the GitHub repositories or create a new issue:
>
> - [docker/for-mac](https://github.com/docker/for-mac/issues)
> - [docker/for-win](https://github.com/docker/for-win/issues)
> - [docker/for-linux](https://github.com/docker/for-linux/issues)
## Topics for all platforms
### Certificates not set up correctly
#### Error message
When attempting to pull from a registry using `docker run`, you may encounter the following error:
```console
Error response from daemon: Get http://192.168.203.139:5858/v2/: malformed HTTP response "\x15\x03\x01\x00\x02\x02"
```
Additionally, logs from the registry may show:
```console
2017/06/20 18:15:30 http: TLS handshake error from 192.168.203.139:52882: tls: client didn't provide a certificate
2017/06/20 18:15:30 http: TLS handshake error from 192.168.203.139:52883: tls: first record does not look like a TLS handshake
```
#### Possible causes
- Docker Desktop ignores certificates listed under insecure registries.
- Client certificates are not sent to insecure registries, causing handshake failures.
#### Solution
- Ensure that your registry is properly configured with valid SSL certificates.
- If your registry is self-signed, configure Docker to trust the certificate by adding it to Docker’s certificates directory (/etc/docker/certs.d/ on Linux).
- If the issue persists, check your Docker daemon configuration and enable TLS authentication.
### Docker Desktop's UI appears green, distorted, or has visual artifacts
#### Cause
Docker Desktop uses hardware-accelerated graphics by default, which may cause problems for some GPUs.
#### Solution
Disable hardware acceleration:
1. Edit Docker Desktop's `settings-store.json` file (or `settings.json` for Docker Desktop versions 4.34 and earlier). You can find this file at:
- Mac: `~/Library/Group Containers/group.com.docker/settings-store.json`
- Windows: `C:\Users\[USERNAME]\AppData\Roaming\Docker\settings-store.json`
- Linux: `~/.docker/desktop/settings-store.json.`
2. Add the following entry:
```JSON
$ "disableHardwareAcceleration": true
```
3. Save the file and restart Docker Desktop.
### Using mounted volumes and getting runtime errors indicating an application file is not found, access to a volume mount is denied, or a service cannot start
#### Cause
If your project directory is located outside your home directory (`/home/<user>`), Docker Desktop requires file sharing permissions to access it.
#### Solution
Enable file sharing in Docker Desktop for Mac and Linux:
1. Navigate to **Settings**, select **Resources** and then **File sharing**.
2. Add the drive or folder that contains the Dockerfile and volume mount paths.
Enable file sharing in Docker Desktop for Windows:
1. From **Settings**, select **Shared Folders**.
2. Share the folder that contains the Dockerfile and volume mount paths.
### `port already allocated` errors
#### Error message
When starting a container, you may see an error like:
```text
Bind for 0.0.0.0:8080 failed: port is already allocated
```
Or
```text
listen tcp:0.0.0.0:8080: bind: address is already in use
```
#### Cause
- Another application on your system is already using the specified port.
- A previously running container was not stopped properly and is still bound to the port.
#### Solution
To discover the identity of this software, either:
- Use the `resmon.exe` GUI, select **Network** and then **Listening Ports**
- In PowerShell, use `netstat -aon | find /i "listening "` to discover the PID of the process
currently using the port (the PID is the number in the rightmost column).