Contents
Docker DesktopとWSL2の導入にあたっての前提確認
Docker DesktopとWSL2を組み合わせて使用する際は、環境設定やシステム要件を事前に確認することが重要です。特にWindowsのバージョンやWSL2の有効化状況、必要な権限などが影響を与えるため、初期段階で適切な準備を行う必要があります。以下では、導入前のチェック項目と基本的な手順を解説します。
Windowsバージョンとシステム要件の確認
Docker DesktopとWSL2は特定の環境で動作する必要があるため、事前にシステムが対応しているかを確認しましょう。
推奨される環境条件とその理由:
| 項目 | 値 | 補足 |
|---|---|---|
| Windowsバージョン | Windows 10 (20H2以降) / Windows 11 | WSL2が完全にサポートされているバージョン |
| メモリ | 8GB以上(16GB以上が望ましい) | DockerデーモンとWSL2の同時動作を考慮 |
| ストレージ空き容量 | 50GB以上 | WSL2仮想ディスクおよびDockerイメージ保存用 |
注意: Windows 10はFeature on Demand(FoD)で更新が必要な場合があります。
winverコマンドで現在のバージョンを確認してください。
WSL2サポートの有無確認
WSL2はWindows 10/11に標準搭載されていますが、有効化されていない場合もあります。以下の手順で確認します。
- PowerShellを管理者権限で起動
wsl --list --verboseコマンドを実行-
出力結果に WSL2 と表示されているか確認する
-
表示されていない場合は、Microsoft公式ドキュメントに従って有効化してください。
- WSL2が利用可能な状態でないと、Docker DesktopのWSL2バックエンド設定が失敗します。
WSL2環境の有効化と初期設定
WSL2を有効にし、Linuxディストリビューションをインストールすることで、Dockerとの連携準備が完了します。
WSL2有効化手順
WSL2の有効化には以下の3ステップが必要です。
-
Windows Featuresへの変更
PowerShellを管理者権限で起動し、以下のコマンドを実行します。
powershell
dism.exe /online /enable-feature /featurename:Microsoft-Hyper-V /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart -
これにより、Hyper-Vと仮想マシンプラットフォームが有効化されます。
注意: Windows 10/11のバージョンによって手順に差異がある場合があります。公式ドキュメントを参照してください。
-
WSLの最新バージョンへのアップグレード
Windows Updateから「Windows Subsystem for Linux」をインストールします。 -
初期設定後は、
wsl --updateコマンドでWSLを最新に保つことが推奨されます。 -
デフォルトのWSLバージョンを2に設定
PowerShellで以下のコマンドを実行しておきます。
powershell
wsl --set-default-version 2
Linuxディストリビューションのインストール
WSL2では、UbuntuやDebianなどのLinuxディストリビューションを使用できます。以下に手順を示します。
- Microsoft Storeから好みのLinuxディストリビューションをインストール
- インストール後、
wsl -l -vで起動状態を確認(例:Ubuntu-22.04が起動中)
注意: WindowsアカウントごとにWSL2環境は分離されます。複数のユーザーで共有する場合は、C:\Users{username}\AppData\Local\lxss以下に置くディレクトリを明示的に指定する必要があります。
Docker Desktop for Windowsのダウンロードとインストール
Docker Desktop for Windowsは最新版(バージョン24.10以上)が提供されています。WSL2バックエンドを選択し、正しい設定を行うことでパフォーマンスを最大化できます。
公式サイトからの最新バージョン確認
Docker Desktopの最新バージョンは公式サイトで確認可能です。
- https://www.docker.com/products/docker-desktop
- ダウンロードページにアクセスし、「Download Docker Desktop for Windows」をクリック
- インストーラーが自動ダウンロードされます
バージョンの確認方法: 安装直後は、PowerShellで
docker --versionを実行すると最新バージョンが表示されます。
WSL2バックエンド設定オプション
インストール時の設定画面でWSL2を指定する必要があります。
- インストーラー起動後、「Install」ボタンをクリック
- 「Use WSL2 backend」というチェックボックスが表示されるので、選択してください
- 既存のWSL2環境がある場合、自動で検出されます(無効な場合は手動設定が必要)
注意: WSL2バックエンドを使用すると、DockerイメージやコンテナはWindowsアカウントごとに分離されるため、共有が必要な場合は事前にファイルパスを明示的に指定してください。
WSL2とDocker Desktopの連携設定
WSL2環境とDocker Desktopを正しく連携させるには、ユーザー権限やファイル共有の設定に注意が必要です。
ユーザー権限と共有ディレクトリの設定
WSL2でDockerコマンドを実行する際、管理者権限で起動しないとエラーになることがあります。
- WSL2からWindowsファイルへのアクセスは、
/mnt/c/経由で可能です(例:/mnt/c/Users/User/documents) - 共有が必要なディレクトリを
dockerコマンド実行時に明示的に指定する
トラブルシューティング:
Permission deniedエラーが発生した場合は、WSL2のユーザーにWindowsファイルへの読み書き権限を付与してください。
- 具体的な手順:
- Windows側で該当ディレクトリにEveryoneグループを追加
- 権限設定を「読み取り/書き込み」に変更
WSL2内でのDockerデーモン確認
WSL2環境でDockerが正しく動作しているかは、以下のコマンドで確認できます。
docker --versionでバージョンが表示されるかdocker infoでWSL2バックエンドが選択されているかを確認(出力に「WSL2」の記載がある)
注意: WSL2でDockerデーモンを直接起動することはできません。Docker Desktop経由での管理が必要です。
インストール後の動作確認とトラブルシューティング
インストールが完了したあとは、基本的なコマンドの実行やよくあるエラーの対処法をチェックします。
基本コマンドによる動作検証
インストール後は、以下の手順で基本的な動作確認を行ってください。
- PowerShellまたはWSL2 terminalを開く
docker run hello-worldを実行(成功すれば「Hello from Docker!」が表示)
| コマンド | 意図 | 実行結果例 |
|---|---|---|
docker --version |
Dockerのバージョン確認 | Docker version 24.10, build 6e89b5f |
wsl -l -v |
WSL2の有効性確認 | Ubuntu-22.04 (WSL2) |
よくあるエラーと対処法
以下のエラーは、WSL2とDocker Desktopの連携に起因する場合があります。
| エラーメッセージ | 対応策 |
|---|---|
Cannot connect to the Docker daemon |
WSL2環境でdockerコマンドを実行しているか、WSL2バックエンドが有効か確認 |
WSL2 not enabled |
Windowsの設定から「WSL」の有効化状態を再確認 |
Permission denied |
Windowsファイルへのアクセス権限を設定するか、共有ディレクトリで実行 |
解決策例: Docker Desktopの設定画面内で、「WSL2 Integration」をONにし、WSL2起動時に自動で連携させるようにしておくと効率的です。