Home Explore Blog CI



docker

2nd chunk of `content/manuals/desktop/troubleshoot-and-support/troubleshoot/topics.md`
d576b5b4afc8aab80b7aa34a65a14f404b4bfb0bdec415850000000100000fa4
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). 

Then, decide whether to shut the other process down, or to use a different port in your
Docker app.

## Topics for Linux and Mac

### Docker Desktop fails to start on Mac or Linux platforms

#### Error message 

Docker fails to start due to Unix domain socket path length limitations:

```console
[vpnkit-bridge][F] listen unix <HOME>/Library/Containers/com.docker.docker/Data/http-proxy-control.sock: bind: invalid argument
```

```console
[com.docker.backend][E] listen(vsock:4099) failed: listen unix <HOME>/Library/Containers/com.docker.docker/Data/vms/0/00000002.00001003: bind: invalid argument
```

#### Cause

On Mac and Linux, Docker Desktop creates Unix domain sockets used for inter-process communication. These sockets are created under the user's home directory.

Unix domain sockets have a maximum path length:
 - 104 characters on Mac
 - 108 characters on Linux

If your home directory path is too long, Docker Desktop fails to create necessary sockets.

#### Solution

Ensure your username is short enough to keep paths within the allowed limit:
 - Mac: Username should be ≤ 33 characters
 - Linux: Username should be ≤ 55 characters

## Topics for Mac

### Upgrade requires administrator privileges

#### Cause 

On macOS, users without administrator privileges cannot perform in-app upgrades from the Docker Desktop Dashboard.

#### Solution

> [!IMPORTANT]
>
> Do not uninstall the current version before upgrading. Doing so deletes all local Docker containers, images, and volumes.

To upgrade Docker Desktop:

- Ask an administrator to install the newer version over the existing one.
- Use the []`--user` install flag](/manuals/desktop/setup/install/mac-install.md#security-and-access) if appropriate for your setup.

### Persistent notification telling me an application has changed my Desktop configurations

#### Cause 

You receive this notification because the Configuration integrity check feature has detected that a third-party application has altered your Docker Desktop configuration. This usually happens due to incorrect or missing symlinks. The notification ensures you are aware of these changes so you can review and repair any potential issues to maintain system reliability.

Opening the notification presents a pop-up window which provides detailed information about the detected integrity issues.

#### Solution

If you choose to ignore the notification, it will be shown again only at the next Docker Desktop startup. If you choose to repair your configuration, you won't be prompted again.

If you want to switch off Configuration integrity check notifications, navigate to Docker Desktop's settings and in the **General** tab, clear the **Automatically check configuration** setting. 

### `com.docker.vmnetd` is still running after I quit the app

The privileged helper process `com.docker.vmnetd` is started by `launchd` and
runs in the background. The process does not consume any resources unless
`Docker.app` connects to it, so it's safe to ignore.


Title: Troubleshooting Port Allocation, Startup Failures, Upgrade Issues, and Configuration Notifications
Summary
This section details solutions for 'port already allocated' errors, focusing on identifying and resolving port conflicts. It also addresses Docker Desktop startup failures on Mac and Linux due to long Unix domain socket paths, recommending shorter usernames. Additionally, it explains the administrator privilege requirement for macOS upgrades and the persistent notifications about configuration changes, along with solutions for each. Finally, it clarifies the behavior of the `com.docker.vmnetd` process on Mac, stating it's safe to ignore.