Docker Desktop インストール時の docker-ce-cli エラー解決方法
問題概要
Ubuntu に Docker Desktop をインストールしようとすると、以下のエラーが発生します:
docker-desktop : Depends: docker-ce-cli but it is not installable
E: Unable to correct problems, you have held broken packages.
この問題は、Docker Desktop の依存パッケージである docker-ce-cli
がシステムのリポジトリに見つからない場合に発生します。
根本原因
Docker Desktop for Linux は Docker Engine のコンポーネントに依存していますが、標準の Ubuntu リポジトリにはこれらのパッケージが含まれていません。公式 Docker リポジトリを追加することで解決できます。
解決方法
方法1: 公式リポジトリを追加してインストール(推奨)
以下の手順で Docker 公式リポジトリを追加し、Docker Desktop をインストールします。
# 必要なパッケージをインストール
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release
# Docker の公式GPGキーを追加
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# Docker リポジトリを追加
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# パッケージリストを更新
sudo apt update
# Docker Desktop のDEBパッケージをインストール
sudo apt install ./docker-desktop-<version>-<arch>.deb
WARNING
インストール終了時に以下の警告が表示されることがありますが、無視して問題ありません:
Download is performed unsandboxed as root as file docker-desktop-<version>-<arch>.deb couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
方法2: リポジトリ設定を確認して修正
リポジトリの設定が間違っている場合、以下のように修正します:
# Docker リポジトリ設定ファイルを編集
sudo nano /etc/apt/sources.list.d/docker.list
# 誤ったリリース名を修正(例: wilma → jammy)
# 修正前: deb [arch=amd64] https://download.docker.com/linux/ubuntu wilma stable
# 修正後: deb [arch=amd64] https://download.docker.com/linux/ubuntu jammy stable
# 更新後にインストール
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
方法3: 破損したパッケージの修復
依存関係の問題が発生している場合、以下のコマンドで修復を試みます:
sudo apt --fix-broken install
補足情報
Docker Desktop と Docker Engine の関係
Docker Desktop for Linux と Docker Engine は同じマシンに並行してインストールできますが、ストレージ場所が分離されているため互いに干渉しません。ただし、同時に実行すると問題が発生する可能性があります。
インストールの確認
インストール後、以下のコマンドで正常に動作するか確認できます:
docker --version
docker run hello-world
正常にインストールされていれば、"Hello from Docker!" メッセージが表示されます。
トラブルシューティング
既存の Docker 関連パッケージがある場合は、事前に削除しておくと問題が解決しやすい場合があります:
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do
sudo apt-get remove $pkg
done
参考資料
このガイドが Docker Desktop のインストール問題解決に役立つことを願っています。