- Windows で Docker Desktop を使わない Docker 環境を構築する (WSL2)
- 出荷状態の windows から wsl2 + Ubuntu + docker-ce の環境を整う
- DockerDesktopからWSL2上のみで動くDockerに移行する
とかかな。なお、/mnt
の下の Windows っぽい領域をマウントして使う場合は遅くなるらしい。
基本的には普通に公式の手順に従って Install using the repository を実行しなさいという形のようだ。
また、いつもの
sudo groupadd docker sudo usermod -aG docker $USER
もしておくと楽、ではある。以下もやると楽・・・ではあるがどうだろうか。
sudo のパスワードを聞かれないようにする などを参考に、/etc/sudoers
に
ユーザー名 ALL=NOPASSWD: /usr/sbin/service docker start, /usr/sbin/service docker stop, /usr/sbin/service docker restart
を追加してしまい、~/.bashrc
に
if service docker status 2>&1 | grep -q "is not running"; then sudo service docker start fi
を追加するとまぁまぁ快適になりはすると思う。ただ、systemd
を使わずに、ターミナル起動時にパスワードなしで docker
を起動するコマンドが走ってしまうので、行儀は良くない。
リリースノートを読むと、
- 2023-01-19
- 20.10.23
- 2023-02-01
- 23.0.0
- 2023-02-09
- 23.0.1
という感じで何故かいきなりメジャーバージョンが急激にあがっているのだが、0 -> 3 が飛びすぎていてちょっと躊躇うな。まぁいいかと思ってアップデートしておいた:
$ docker --version Docker version 23.0.1, build a5ee5b1
ある日突然何故か
mount: /sys/fs/cgroup/cpuset: wrong fs type, bad option, bad superblock on cgroup, missing codepage or helper program, or other error.
という感じで docker 起動時に怒られることがあるかもしれないが、mount cgroup v2 error (Docker) · Issue #9868 · microsoft/WSL · GitHub を参考に、以下を実行すると直るという説があって、実際エラーは消えた。まったくよく分からない。
- Re-enable Hyper-V and restart the computer.
- Edit (or create) the file /etc/wsl.conf in WSL, and add the follow lines:
[boot] systemd=true
- Run wsl --shutdown as an administrator in PowerShell to close the WSL instance, and then restart WSL.