はじめに (対象読者・この記事でわかること)

この記事は、Windows10マシンでDocker Toolboxを使おうとしたものの「起動できない」「dockerコマンドが認識されない」といった症状に悩まされている方を対象としています。
読み終えるまでに、なぜDocker Toolboxが起動できないのかを切り分ける方法、実際に動作を確認できる代替手段(Docker Desktop/WSL2)、そして既存の仮想マシン環境を活かしながら最小の手間でDockerコンテナを動かすコツが身につきます。

前提知識

  • Windows10の基本的な操作(コマンドプロンプト・PowerShellの起動)
  • VirtualBoxのインストール経験(VMイメージの扱いに目くじらが立たないレベル)
  • Dockerの基礎用語(イメージ・コンテナ・レジストリ)を聞いたことがある

Docker Toolboxとは何か、そしてなぜ「動かなくなった」のか

Docker Toolboxは、Windows/MacがHyper-VやApple Hypervisor以前の仮想環境しか使えなかった時代にDocker社が提供した「VirtualBox+Docker Engine+各種CLI」をまとめたパッケージです。
Windows10 Homeでも動作し、教育現場やレガシーPCで重宝されました。

しかし2020年以降、以下の要因で起動障害が急増しました。

  1. VirtualBoxのバージョンアップによるゲストOS互換性の変化(v6.1以降)
  2. Windows10のセキュリティ更新(Device Guard、Credential Guard)がデフォルトで有効化
  3. Docker社によるToolboxメンテナンス終了(2020年3月時点で非推奨)
  4. 代替手段(Docker Desktop for Windows/WSL2)の急速な成熟

結果、「Docker Toolboxをインストールしたけどdocker-machine lsでホストがRunningにならない」「docker run hello-worldCannot connect to the Docker daemonと出る」といった相談が増えています。

起動しない原因を切り分ける&実用的な代替手段まで解説

1. まずはエラーログを読み分ける

Docker Toolboxが起動しない原因を特定するには、以下3つのログを同時に確認すると早いです。

1-A. Docker Machine側のログ

Bash
docker-machine ls # 出力例 NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS default virtualbox Stopped Unknown virtualbox host only interface not found

1-B. VirtualBoxのログ

VirtualBox Manager → 「default」仮想マシン → ログからVBoxHardening.logを開き、以下のようなエラーが出ていないか確認します。

supHardenedWinVerifyProcess failed with rc=-5637

1-C. Windows側のイベントビューア

イベントビューアWindowsログシステムで、エラー番号5114001が出ていれば、仮想化支援機能(VT-x/AMD-V)が無効化されているか、セキュリティ機能が干渉しているサインです。

2. 切り分けチェックリストと対処法

チェック項目 確認コマンド/手順 失敗時の対処
CPU仮想化設定 タスクマネージャ → パフォーマンス → CPU → 「仮想化」が有効か BIOS/UEFIでIntel VT-x/AMD-Vを有効化
Device Guard無効化 msinfo32で「Device Guard」行がRunning グループポリシーまたはレジストリで無効化
VirtualBoxバージョン vboxmanage --version 6.0系LTSまたは6.1.34以降に固定
ホストオンリーアダプター docker-machine create -d virtualbox --virtualbox-hostonly-cidr "192.168.99.1/24" default 手動で「ホストオンリーアダプター」作ってから再作成
既存defaultマシン破損 docker-machine rm default 一度削除して再作成

3. 代替手段:Docker Toolboxを諦めてWSL2+Docker Desktopを使う

2025年現在、Windows10 21H2以降ならWSL2が標準で使えるため、Docker Toolboxを頑張って直すより、移行した方が工数が短縮できます。

3-A. WSL2環境のセットアップ

  1. PowerShell(管理者)で powershell dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  2. マイクロソフトストアから「Ubuntu 22.04 LTS」入手
  3. 初回起動後、WSL2バージョンに設定
    powershell wsl --set-version Ubuntu-22.04 2 wsl --set-default-version 2

3-B. Docker Desktop for Windowsインストール

  1. 公式サイトからexe取得
  2. インストール時「WSL2バックエンドを使用する」にチェック
  3. インストール完了後、PowerShellで bash docker run --rm hello-world が動けば成功

3-C. 既存Toolboxイメージの移行手順

Docker Toolboxで作ったイメージをDocker Desktopに移すには、以下のエクスポート/インポートが楽です。

Bash
# Toolbox側(Git BashやPowerShell) docker-machine ssh default 'docker save myimage:latest | gzip > /home/docker/myimage.tgz' docker-machine scp default:/home/docker/myimage.tgz ./myimage.tgz # WSL2側 docker load < ./myimage.tgz

4. ハマりどころとトラブルシュート

4-A. WSL2で「docker daemonが起動しない」

.wslconfigにメモリ上限を設定しすぎているとデーモンが起動しないことがあります。
%USERPROFILE%\.wslconfigを以下のように調整してください。

[wsl2]
memory=4GB
processors=2
swap=1GB

設定後、wsl --shutdownして再起動。

4-B. VirtualBoxとHyper-Vの共存

Windows10 ProでHyper-Vを有効にすると、VirtualBoxの64bitゲストが動作しなくなります。
Docker Toolboxを継続利用したい場合は、以下のいずれかを選択します。 - Hyper-Vを無効化:bcdedit /set hypervisorlaunchtype off - VirtualBox 7以降で「Hyper-V as fallback」機能を有効化(パフォーマンスは劣る)

4-C. プロキシ環境下でイメージ取得失敗

企業プロキシ下では、Docker Desktopの設定UIから「リソース」→「プロキシ」にアドレスを入れるだけで済みます。
一方、Docker Toolboxの場合、以下3箇所を揃えないとdocker pullが通りません。 1. Docker Machine環境変数 bash docker-machine ssh default export HTTP_PROXY=http://proxy.example.com:8080 export HTTPS_PROXY=http://proxy.example.com:8080 2. Dockerデーモン設定(/var/lib/boot2docker/profile) 3. クライアント側(Windows)環境変数

まとめ

本記事では、Windows10でDocker Toolboxが起動しない理由を切り分ける方法、VirtualBox/WSL2の観点からのトラブルシュート、そして新規導入にはDocker Desktop+WSL2移行が最速であることを解説しました。

  • Docker Toolboxはもうメンテナンスされない;VirtualBoxの互換性とWindowsセキュリティ機能の影響を受けやすい
  • 既存環境を残したまま、WSL2+Docker Desktopへ移行すれば、殆どのケースで解決
  • 企業プロキシやメモリ制限など、ハマりポイントは予め.wslconfigとDocker Desktop UIで制御可能

この記事を通して、レガシーなToolboxに縛られずに、今すぐ使えるDocker環境を手に入れていただければ幸いです。
今後は、WSL2上でVS Code Dev Containersを使った開発効率化について、実践的なTipsを発信していく予定です。

参考資料