概要
wslではデフォルトで毎回Dockerサービスを手動起動しないといけない。
その対応について。
方法その1 systemdを動くようにする
一番素直な方法な気がする。
wsl.confに設定を追加する
/etc/wsl.conf
[boot]
systemd=true
wsl再起動
コマンドプロンプトもしくはPSで以下を実行してwslを終了する。
> wsl --shutdown
方法その2 .bashrc等で起動する
sudoでパスワード無しでサービス起動できるようにする
sudoers.d下に設定ファイルを作る。
$ echo "$USER ALL=(ALL:ALL) NOPASSWD: /usr/sbin/service docker start" |sudo tee /etc/sudoers.d/docker
.bash_profileに記載
# read default file
. .profile
# start docker service
if test $(service docker status | awk '{print $4}') = 'not'; then
sudo /usr/sbin/service docker start
fi
おまけ
sudo無しでdockerコマンドが動くようにする。
$ sudo gpasswd -a $USER docker
参考