Skip to content

Commit 4d160e7

Browse files
authored
ENGDOCS-2372 (#21769)
<!--Delete sections as needed --> ## Description <!-- Tell us what you did and why --> ## Related issues or tickets <!-- Related issues, pull requests, or Jira tickets --> ## Reviews <!-- Notes for reviewers here --> <!-- List applicable reviews (optionally @tag reviewers) --> - [ ] Technical review - [ ] Editorial review - [ ] Product review
1 parent e0e2689 commit 4d160e7

File tree

1 file changed

+132
-0
lines changed

1 file changed

+132
-0
lines changed
Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,132 @@
1+
---
2+
description: Learn how to resolve issues affecting macOS users of Docker Desktop, including startup problems and false malware warnings, with upgrade, patch, and workaround solutions.
3+
keywords: Docker desktop, fix, mac, troubleshooting, macos, false malware warning, patch, upgrade solution
4+
title: Resolve the recent Docker Desktop issue on macOS
5+
linkTitle: Fix startup issue for Mac
6+
weight: 220
7+
---
8+
9+
This guide provides steps to address a recent issue affecting some macOS users of Docker Desktop. The issue may prevent Docker Desktop from starting and in some cases, may also trigger inaccurate malware warnings. For more details about the incident, see the [blog post](https://www.docker.com/blog/incident-update-docker-desktop-for-mac/).
10+
11+
> [!NOTE]
12+
>
13+
> Docker Desktop versions 4.28 and earlier are not impacted by this issue.
14+
15+
## Available solutions
16+
17+
There are a few options available depending on your situation:
18+
19+
### Upgrade to Docker Desktop version 4.37.2 (recommended)
20+
21+
The recommended way is to upgrade to the latest Docker Desktop version which is version 4.37.2.
22+
23+
If possible, update directly through the app. If not, and you’re still seeing the malware pop-up, follow the steps below:
24+
25+
1. Kill the Docker process that cannot start properly:
26+
```console
27+
$ sudo launchctl bootout system/com.docker.vmnetd 2>/dev/null || true
28+
$ sudo launchctl bootout system/com.docker.socket 2>/dev/null || true
29+
30+
$ sudo rm /Library/PrivilegedHelperTools/com.docker.vmnetd || true
31+
$ sudo rm /Library/PrivilegedHelperTools/com.docker.socket || true
32+
33+
$ ps aux | grep docker | awk '{print $2}' | sudo xargs kill -9 2>/dev/null
34+
```
35+
36+
2. Make sure the malware pop-up is permanently closed.
37+
38+
3. [Download and install version 4.37.2](/manuals/desktop/release-notes.md#4372).
39+
40+
4. Launch Docker Desktop. A privileged pop-up message displays after 5 to 10 seconds.
41+
42+
5. Enter your password.
43+
44+
You should now see the Docker Desktop Dashboard.
45+
46+
### Install a patch if you have version 4.34 - 4.36
47+
48+
If you can’t upgrade to the latest version and you’re seeing the malware pop-up, follow the steps below:
49+
50+
1. Kill the Docker process that cannot start properly:
51+
```console
52+
$ sudo launchctl bootout system/com.docker.vmnetd 2>/dev/null || true
53+
$ sudo launchctl bootout system/com.docker.socket 2>/dev/null || true
54+
55+
$ sudo rm /Library/PrivilegedHelperTools/com.docker.vmnetd || true
56+
$ sudo rm /Library/PrivilegedHelperTools/com.docker.socket || true
57+
58+
$ ps aux | grep docker | awk '{print $2}' | sudo xargs kill -9 2>/dev/null
59+
```
60+
61+
2. Make sure the malware pop-up is permanently closed.
62+
63+
3. [Download and install the patched installer](/manuals/desktop/release-notes.md) that matches your current base version. For example if you have version 4.36.0, install 4.36.1.
64+
65+
4. Launch Docker Desktop. A privileged pop-up message displays after 5 to 10 seconds.
66+
67+
5. Enter your password.
68+
69+
You should now see the Docker Desktop Dashboard.
70+
71+
### Wait for a patch for versions 4.32 - 4.33
72+
73+
For versions 4.32 - 4.33, a patch fix is in progress. If you need an immediate solution, you can use the following workaround:
74+
75+
1. Kill the Docker process that cannot start properly:
76+
```console
77+
$ sudo launchctl bootout system/com.docker.vmnetd 2>/dev/null || true
78+
$ sudo launchctl bootout system/com.docker.socket 2>/dev/null || true
79+
80+
$ sudo rm /Library/PrivilegedHelperTools/com.docker.vmnetd || true
81+
$ sudo rm /Library/PrivilegedHelperTools/com.docker.socket || true
82+
83+
$ ps aux | grep docker | awk '{print $2}' | sudo xargs kill -9 2>/dev/null
84+
```
85+
86+
2. Download and install a re-signed installer matching your exact version of Docker Desktop from the [Release notes](/manuals/desktop/release-notes.md).
87+
88+
3. Install new binaries:
89+
90+
```console
91+
$ sudo cp /Applications/Docker.app/Contents/Library/LaunchServices/com.docker.vmnetd /Library/PrivilegedHelperTools/
92+
$ sudo cp /Applications/Docker.app/Contents/MacOS/com.docker.socket /Library/PrivilegedHelperTools/
93+
```
94+
95+
4. Launch Docker Desktop. A privileged pop-up message displays after 5 to 10 seconds.
96+
97+
5. Enter your password.
98+
99+
You should now see the Docker Desktop Dashboard.
100+
101+
## MDM script
102+
103+
If you are an IT administrator, you can use the following script as a workaround for your developers if they have a re-signed version of Docker Desktop version 4.35 or later.
104+
105+
```console
106+
#!/bin/bash
107+
108+
# Stop the docker services
109+
echo "Stopping Docker..."
110+
sudo pkill [dD]ocker
111+
112+
# Stop the vmnetd service
113+
echo "Stopping com.docker.vmnetd service..."
114+
sudo launchctl bootout system /Library/LaunchDaemons/com.docker.vmnetd.plist
115+
116+
# Stop the socket service
117+
echo "Stopping com.docker.socket service..."
118+
sudo launchctl bootout system /Library/LaunchDaemons/com.docker.socket.plist
119+
120+
# Remove vmnetd binary
121+
echo "Removing com.docker.vmnetd binary..."
122+
sudo rm -f /Library/PrivilegedHelperTools/com.docker.vmnetd
123+
124+
# Remove socket binary
125+
echo "Removing com.docker.socket binary..."
126+
sudo rm -f /Library/PrivilegedHelperTools/com.docker.socket
127+
128+
# Install new binaries
129+
echo "Install new binaries..."
130+
sudo cp /Applications/Docker.app/Contents/Library/LaunchServices/com.docker.vmnetd /Library/PrivilegedHelperTools/
131+
sudo cp /Applications/Docker.app/Contents/MacOS/com.docker.socket /Library/PrivilegedHelperTools/
132+
```

0 commit comments

Comments
 (0)