以前、WSL+Docker+Laravelで開発環境を構築したわけですが、Hello Worldを表示するだけで7秒ぐらいかかってめちゃくちゃ遅い。どうやらWSL2とWindows間のデータのやり取りが発生する際に、ファイルシステム間の変換をしているため遅いみたいです。
ということで、Dockerで使用するファイルをWSL2の中に入れてあげて、高速化する方法です。
WSL2で実行する
データが/mnt配下にあることが遅い原因なので、/home配下に構築します。
wsl
mkdir /home/<ユーザー名>/laravel
cd /home/<ユーザー名>/laravel
curl -s https://laravel.build/example-app | bash
フォルダ名「laravel」や「example-app」は好きな文字列でOKです。
詳しい環境構築手順は以下を参考にしましょう。
【重要】Dockerコンテナ起動時の注意点
この方法で/home配下に配置した場合、以下のコマンドは使えません。アクセスしてもLaravelがエラーを吐きます。
docker-compose up -d
代わりにこっちを使いましょう。
./vendor/bin/sail up