WSL2のUbuntuをWIndows10に導入する時に躓いたので, 備忘録として対処法などを書き残しておきます.
DockerをWSL上で動かそうとしたらめちゃめちゃ苦戦したので.
WSLの有効化
「windowsの機能の有効化または無効化」から, 「Linux用Windowsサブシステム」「仮想マシン プラットフォーム」にチェックを入れてOK.
デフォルトWSL1が入ってしまう問題の回避
罠だと思います. 2022年4月現在のWSLでは, デフォルトでWSL1が動作するようになっているようです. Dockerを動かすためにはどうやら仮想化のナントカが影響しており, WSL2でないと動作しないようです.
まずはWSL2を使うためのカーネル更新パッケージをこちらからインストールします.
最後にコマンドプロンプトでwsl2を使うように設定をします.
$ wsl --set-default-version 2
Ubuntuのインストール
以下のコマンドで利用可能なLinuxの一覧を確認します.
$ wsl --list --online
次に, 欲しいディストーションをインストールします.
$ wsl --install -d <ディストリビューション名>
私はUbuntuを導入したかったので, $ wsl --install -d Ubuntu
を実行しました.
確認
念の為, WSL2でUbuntuが使えるようになったか確認しましょう.
$ wsl -l -v
ここでVERSION
が2になっていたら成功です.
もし1になっていたら, 次のコマンドで2に変換できるようです. <ディストリビューション名>の部分は, 上のコマンドの出力に合わせます.
$ wsl --set-version <ディストリビューション名> 2
WSL2のUbuntuの起動
左下の検索窓でUbuntu等, 先程インストールしたディストリビューションを検索すると出てきます.
初回起動時は, Linuxで使うローカルアカウントの作成があります. 適当にユーザー名とパスワードを設定しましょう.
ちなみにWSLでは, Ubuntuの画面を閉じるだけでは再起動せず, かつ, $ sudo reboot
等も使えないようです. 設定の反映等でUbuntuの再起動が必要な時はコマンドプロンプト等で$ wsl -t <ディストリビューション名>
で終了する必要があります.
Dockerの導入
こちらの手順に従って導入しました.
dockerのdaemonの起動が必要なので, ディストリビューションのターミナル内で$ sudo service docker start
を実行します.
参考
https://codezine.jp/article/detail/14646
http://docs.docker.jp/engine/articles/systemd.html