開発環境・ツール

「com.docker.vmnetd」はマルウェア?Macで「コンピュータに損害を与える」と出てDocker Desktopが起動しないときの対処法

Macを起動したら、いきなりこんなメッセージが出て、Docker Desktopが起動しなくなった、という人向けの記事です。

com.docker.vmnetdを開くとコンピューターが破損します。ゴミ箱に入れる必要があります

英語の環境では、次のように表示されます。

"com.docker.vmnetd" will damage your computer.
"com.docker.vmnetd" was not opened because it contains malware. This action did not harm your Mac.

同じメッセージがcom.docker.socketで出ることもあります。僕も2025年1月に実際にこの表示が出て、Docker Desktopが使えなくなりました。

この記事は、Dockerの公式ドキュメント「Resolve the recent Docker Desktop issue on macOS」と、Dockerのステータスページ(障害情報)をもとに、2026年10月に内容を更新しています。

スポンサーリンク

先に結論:マルウェアではない。Docker Desktopを更新すれば直る

  • マルウェアではありません。Docker Desktopの一部のファイルが、正しくない証明書で署名されていたため、macOSがマルウェアと誤って判定したものです
  • 2025年1月に起きたDocker側の不具合で、Dockerは修正版を出しています
  • Docker Desktopを最新版に更新すれば直ります。アプリから更新できない場合は、下の手順で古いプロセスを止めてから、最新版を入れ直します
  • 公式によると、Docker Desktop 4.28以前は影響を受けません。修正前の古いバージョンを使い続けていると、今でもこの表示が出ることがあります

何が起きたのか

Dockerのステータスページによると、この障害は2025年1月7日(米国時間)に報告されました。Docker Desktopの既存のインストールに含まれる一部のファイル(com.docker.vmnetdとcom.docker.socket)のコード署名が正しくなかったため、macOSがこれらをマルウェアとして扱い、Docker Desktopの起動をブロックしていました。

Dockerは、4.32〜4.37の各バージョンに修正版(パッチ)を出し、2025年1月9日に公開した4.37.2で、この2つのファイルが新しいものに更新されない不具合も直しています。

com.docker.vmnetdとcom.docker.socketは、Docker Desktopがネットワークなどを扱うために使う、管理者権限で動く補助のプログラムです。Docker Desktopを終了しても動き続けていることがありますが、公式ドキュメントでは、アプリが接続していないときはリソースを使わないので問題ないとされています。

対処法1:Docker Desktopを最新版に更新する(公式のおすすめ)

まず、Docker Desktopのアプリから更新できるか試してください。更新できれば、それで直ります。

警告が何度も出て更新できない場合は、公式ドキュメントの次の手順で直します。

1. 起動できなくなっているDockerのプロセスを止めて、問題のファイルを消します。ターミナルで、次のコマンドを1行ずつ実行します(パスワードを聞かれたら、Macのログインパスワードを入力します)。

sudo launchctl bootout system/com.docker.vmnetd 2>/dev/null || true
sudo launchctl bootout system/com.docker.socket 2>/dev/null || true

sudo rm /Library/PrivilegedHelperTools/com.docker.vmnetd || true
sudo rm /Library/PrivilegedHelperTools/com.docker.socket || true

ps aux | grep -i docker | awk '{print $2}' | sudo xargs kill -9 2>/dev/null

2. マルウェアの警告のポップアップを閉じ、出ていない状態にします。

3. Dockerの公式サイトから、最新版のDocker Desktopをダウンロードしてインストールします。

4. Docker Desktopを起動します。5〜10秒ほどで管理者権限を求めるポップアップが出るので、パスワードを入力します。

これでDocker Desktopのダッシュボードが表示されれば完了です。

手順のあとも警告が出続けていて、Dockerがゴミ箱に入っている場合は、ゴミ箱を空にしてから、もう一度手順をやり直してください(公式ドキュメントの案内です)。

スポンサーリンク

対処法2:Homebrewで入れている場合

HomebrewのcaskでDocker Desktopを入れている場合は、入れ直すのが公式のおすすめです。

brew update
brew reinstall --cask docker

対処法3:今のバージョンのまま直したい場合(4.32〜4.36)

仕事の環境などで、すぐに最新版に上げられない場合は、今のバージョンに対応した修正版を入れます。たとえば4.36.0を使っているなら、4.36.1を入れます。手順は対処法1と同じで、3で入れるものが「最新版」から「同じバージョンの修正版」に変わるだけです。修正版は、Docker Desktopのリリースノートからダウンロードできます。

僕が実際にやったこと

僕の場合は、当時の公式ドキュメントに載っていた、管理者向けのスクリプトの中身を1行ずつ実行して直しました。

sudo pkill '[dD]ocker'
sudo launchctl bootout system /Library/LaunchDaemons/com.docker.vmnetd.plist
sudo launchctl bootout system /Library/LaunchDaemons/com.docker.socket.plist
sudo rm -f /Library/PrivilegedHelperTools/com.docker.vmnetd
sudo rm -f /Library/PrivilegedHelperTools/com.docker.socket
sudo cp /Applications/Docker.app/Contents/Library/LaunchServices/com.docker.vmnetd /Library/PrivilegedHelperTools/
sudo cp /Applications/Docker.app/Contents/MacOS/com.docker.socket /Library/PrivilegedHelperTools/

これは、Docker Desktopのアプリの中に入っている正しく署名されたファイルで、問題のファイルを置き換える手順です。そのあとMacを再起動したら、無事にDocker Desktopが起動しました。

ただし、この方法はすでに修正版のDocker Desktopが入っていることが前提です(アプリの中のファイル自体が古いままだと、置き換えても直りません)。今から対処するなら、対処法1の「最新版に更新する」ほうが確実です。

zshで「no matches found: [dD]ocker」と出る場合

最初のsudo pkill [dD]ockerを実行したとき、次のエラーが出ました。

zsh: no matches found: [dD]ocker

これは、Macの標準のシェルであるzshが[dD]を「ファイル名のパターン」として解釈し、一致するファイルがないのでエラーにしたものです。コマンドそのものの問題ではありません。

当時はいったんbashに切り替えて実行しましたが、もっと簡単なのは、パターンを引用符で囲むことです。

sudo pkill '[dD]ocker'

または、大文字と小文字を区別しない-iを使います。今の公式ドキュメントのスクリプトも、この書き方になっています。

sudo pkill -i docker

よくある質問

Q. 本当にマルウェアではないのですか?

A. Docker自身が、署名の不具合による誤検知だったと説明しています(ステータスページと公式ドキュメント)。Dockerの公式サイト以外から入手したDocker Desktopでなければ、心配はいりません。気になる場合は、公式サイトから最新版を入れ直すのがいちばん確実です。

Q. 「ゴミ箱に入れる」を押してしまいました

A. 対処法1の手順で直せます。それでも警告が出る場合は、ゴミ箱を空にしてから手順をやり直してください。

Q. 2026年になっても、この警告が出ます

A. 修正前の古いバージョンを使い続けている可能性が高いです。Docker Desktopを最新版に更新してください。Docker Desktopは、macOSの最新版とその前の2つのメジャーバージョンに対応しているので、macOSが古すぎて最新版を入れられない場合は、macOSの更新も検討してください。

まとめ

  • 「com.docker.vmnetdを開くとコンピューターが破損します」は、Docker側の署名の不具合による誤検知。マルウェアではない
  • Docker Desktopを最新版に更新すれば直る。更新できないときは、プロセスを止めてファイルを消してから入れ直す
  • Homebrewならbrew reinstall --cask docker
  • zshでno matches foundが出たら、'[dD]ocker'のように引用符で囲むか、pkill -i dockerを使う

参考:

スポンサーリンク