WSL 2 では systemctl が使えないため、システムの起動時に Docker を自動起動することができない。ただ、Windows 側のタスクスケジューラを使えばできるらしい。
#!/usr/bin/env bash
# このファイルに実行権限も付与しておく
sudo service docker start
#/etc/sudoers
user ALL=(ALL:ALL) NOPASSWD: /bin/sh /path/to/script
こちらの Qiita 記事を参考にした。Automatically Docker Daemon Boot on Windows Subsystem Linux(WSLにおけるdockerデーモンの自動起動)