概要
WSL2のUbuntu環境にDocker Engineをインストールする手順を端的に紹介します。
WSL2のインストール
こちらページの手順でWSL2をインストールします。
実際のコマンドとしては以下の通りで、WSLやUbuntuのインストール等の一通りの処理が実行されます。
wsl --install -d Ubuntu
Docker Engineのインストール
インストールしたWSLを起動し、以下の手順でDocker Engineをインストールします。
Docker Engineのインストールスクリプトの実行
下記の "Install using the convenience script" に記載されているインストール用スクリプトを用いてインストールします。
実際のコマンドとしては以下の2つです。
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
WSL環境で上記のコマンドを実行した場合、以下のようにDocker Desktop for Windowsの利用を推奨するメッセージが表示されますが、そのまま待機するとインストールが進められます。
WSL DETECTED: We recommend using Docker Desktop for Windows.
Please get Docker Desktop from https://www.docker.com/products/docker-desktop
ルート以外のユーザーでdockerコマンドを利用する設定を加える
上記でDocker Engineのインストールは完了ですが、ルートユーザー以外から実行できるように以下の設定を加えます。
実際のコマンドとしては以下のコマンドだけです。
sudo usermod -aG docker $USER
systemdの有効化
2023/09/23 追記
下記のドキュメントにも記載の通り、現在ではUbuntuを含めた多くのディストリビューションにおいて既定でsystemdが有効化されているようです。 /etc/wsl.conf
に既にオプションが記載されていればOKです。
こちらのページの記載の通り、systemdを有効化するオプションを追加します。
具体的には、vim等を使って/etc/wsl.conf
にsystemdを有効化するオプションを以下の通り記述します。
sudo vi /etc/wsl.conf
[boot]
systemd=true
WSLの再起動
ここまでの設定を反映させるため、WSLを再起動します。WSLを閉じ、PowerShellで以下のコマンドを実行します。
wsl --shutdown
Dockerの実行確認
再度WSLを起動し、以下のコマンドでdockerが実行できるかどうか確認します。
docker run hello-world
以下のようなメッセージが表示されればインストールは完了です。
Hello from Docker!
This message shows that your installation appears to be working correctly.
関連文献
筆者のブログにもWSL2でのDocker Engineのインストール方法や関連情報、DockerでのPyTorch環境の構築方法を掲載しています。