Windows10のWSL環境でwp-envが使えない件

最初のつまづき

Windows10のWSLのUbuntsu上でwp-envを実行しようとしたらうまく行かなかった。

# wp-env start
✖ Error while running docker-compose command.
Version in "/home/akahige/wp-env/20247b21c367f0a81420a8285eace05c/docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1.
For more on the Compose file format versions, see https://docs.docker.com/compose/compose-file/

要するにdocker-composeのバージョンが古いというエラー。

普段はWindows10の本体の方に入れた最新のdocker-compose.exeにUbuntsuからエイリアスを張って使っているのだが、このエイリアスを見ないで/usr/binか/usr/local/binにあるdocker-composeをパス決め打ちで読みに行ってるっぽい。

ではこうしたらどうだと/usr/bin/docker-composeや/usr/local/bin/docker-composeからWindows本体の方のdocker-compose.exeにシンボリックリンクを張ってもダメだった。

apt-getで入れたDockerだとdocker-composeのバージョンが古いのでダメみたいだ。
ちなみにwp-envの生成するComposeファイルは強制的に3.7になってしまい、3.3などに書き換えてもwp-env実行時に上書きされるので意味がなかった。

二番目のつまづき

それならばと公式の手順に従ってWSLのUbuntsuに最新のdocker-composeを入れる。

$ sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

そして再度wp-env startを実行。

✖ Error while running docker-compose command.

The command 'docker-compose' could not be found in this WSL 1 distro.
We recommend to convert this distro to WSL 2 and activate
the WSL integration in Docker Desktop settings.

See https://docs.docker.com/docker-for-windows/wsl/ for details.

ドユコト?
そもそもアップデートで2004落ちてこないからWSL2使えないねん。

って思ったらこれは実行パーミッション立てるの忘れてたからだった。

$ sudo chmod +x /usr/local/bin/docker-compose

これでwp-env startしてみると

✖ Error while running docker-compose command.
Couldn't connect to Docker daemon at http+docker://localhost - is it running?

If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.

うーん。なるほどぉ。WSL上で動いてるDocker daemonが必要と言うことか。
ならばWSLでwp-envを使おうとしたらWSL2になるまで厳しいということかな。2004いつ来るのやら。

Windows10の本体の方にwp-envを入れて使えばたぶん動くと思うが、あんまり気が進まないな。
まあすぐ必要なわけでもないし、自前で構築したDocker環境で足りてるから良しとしよう。

将来的には公式のwp-env使った方が何かと便利そうなのでWSL2使えるようになったら積極的に移行していきたい。