# Homebrew で Docker Desktop 再インストール時のエラー解決方法

macOS で Homebrew を使って Docker を再インストールした際に、エラーが発生してインストールできませんでした。

# エラー内容

Error: It seems there is already a Binary at '/opt/homebrew/share/zsh/site-functions/_docker'.

このエラーは、以前の Docker インストール時のファイルが残っているために発生します。

# 原因

/opt/homebrew/share/zsh/site-functions/_dockerファイルが既に存在することがエラーの原因です。

一般的なbrew uninstallでは、完全に削除できない場合があります。

# 解決方法

# ステップ 1:Docker の強制削除

--forceオプションを使用して、Docker を強制的に削除します。

# Docker Desktop(Cask)の強制削除
brew uninstall --cask docker --force

# Docker CLI(Formula)の強制削除
brew uninstall --formula docker --force

--force オプションについて

--forceオプションを付けることで、残存ファイルも含めて強制的に削除できます。通常のuninstallでは削除できない場合に使用します。

# ステップ 2:残存ファイルの手動削除(必要な場合)

強制削除後もエラーが発生する場合は、残存ファイルを手動で削除します。

# zshの補完ファイルを削除
rm -rf /opt/homebrew/share/zsh/site-functions/_docker

# その他のDocker関連ファイルを確認
ls -la /opt/homebrew/share/zsh/site-functions/ | grep docker

# ステップ 3:Docker の再インストール

削除が完了したら、Docker を再インストールします。

# Docker Desktop インストール
brew install --cask docker

# Docker CLI インストール(必要な場合)
brew install docker

これで、エラーなくインストールできるはずです。

# Homebrew の便利なコマンド

# よく使う基本コマンド

# パッケージを検索
brew search TEXT|/REGEX/

# パッケージ情報を表示
brew info [FORMULA|CASK...]

# パッケージをインストール
brew install FORMULA|CASK...

# Homebrewを更新
brew update

# パッケージをアップグレード
brew upgrade [FORMULA|CASK...]

# パッケージをアンインストール
brew uninstall FORMULA|CASK...

# インストール済みパッケージ一覧
brew list [FORMULA|CASK...]

# トラブルシューティング用コマンド

# Homebrewの設定を確認
brew config

# Homebrewの状態を診断
brew doctor

# 詳細なログを表示してインストール
brew install --verbose --debug FORMULA|CASK

brew doctor の活用

brew doctorを実行すると、Homebrew の設定や環境に問題がないか診断してくれます。エラーが発生した際は、まずこのコマンドを実行してみましょう。

# まとめ

Homebrew で Docker Desktop を再インストールする際のエラー解決方法を解説しました。

# エラーの原因

  • 以前の Docker インストール時のファイル(_docker)が残っている
  • 通常のuninstallでは完全に削除できない

# 解決方法

  1. --forceオプションを使用した強制削除

    brew uninstall --cask docker --force
    brew uninstall --formula docker --force
    
  2. 残存ファイルの手動削除(必要な場合)

    rm -rf /opt/homebrew/share/zsh/site-functions/_docker
    
  3. Docker の再インストール

    brew install --cask docker
    

# ポイント

  • --forceオプションは、残存ファイルも含めて強制的に削除します
  • エラーが続く場合は、残存ファイルを手動で削除します
  • brew doctorで Homebrew の状態を確認できます

関連情報: Homebrew 公式ドキュメント (opens new window)

同じタグを持つ記事をピックアップしました。