Docker WSL2 Laravel sail
- Docker 4.6.1
- WSL2
- Ubuntu 20.04 LTS
- PowerShell
PowerShell WSL1 から WSL2 へ変換
WSL1 から WSL2 へ変換できない
変換はかなり時間かかる。自分の場合は一時間半位かかっていたと思う。
WSL1 から WSL2 への変換が終わるまでに2時間以上かかりました。。。
wsl --set-version Ubuntu-20.04 2
コマンド実行で数分で変換完了する人と何時間でも変換されない人がいるようです。
パーミッションエラーで WSL2 へ変換失敗エラー
WSL Tips
Ubuntu ができない、強制終了のエラーが出た際に wsl シャットダウンして、Ubuntu を再起動する
WSL のデフォルトバージョンを 2
に設定したほうがいい
※ Ubuntu-20.04 Ubuntu-18.04 Ubuntu-22.04 も同じ手順で操作が同じ
Docker container composer install 使う
WSL の設定が終わりましたら、残りは Ubuntu 内で Docker や Git 操作になります。
ソースコードを Pull して Composer install を実行
--rm
オプションは使い捨てコンテナ意味します。
-i
オプション(--interactive)は、ホストの標準入力をコンテナの標準入力につなげてくれます。
-t
オプションは(--tty)、コンテナの標準出力をコンテナの標準出力につなげてくれます。
-v
オプション(--volume)は ホスト:コンテナ 形式でボリュームマウントを指定します。
PHP のバージョン指定
コマンド指定する
composer config platform.php 8.0.16
コマンドでやっても一緒ですが、composer.json
ファイルを直接変更しても問題ありません。
余談:Nodejs のバージョン指定は package.json
に engines 指定
.bash_profile
.zshrc にエイリアス貼る
これでcomposer install
が使えるようになります。
Laravel sail
vendor/bin/sail のエイリアス貼る