【Laravel11】Laravel sailで環境構築(Mac & Windows)
はじめに
最近Laravelがバージョン10から11に変わったということを聞いて「どうせなら一番新しいのでやりたい!」と思いYouTubeなどで動画を探したのですが、日本語の動画はバージョン10が多く断念、、
よし、公式ドキュメントをみよう!
英語だらけで難しそうなイメージだったのですが、やってみると案外簡単&MacもWindowsもしっかり動いたので自分とチームメンバー用に残しておきます。
Laravel sailとは
Laravel Sailは、Dockerコンテナ技術を使って、Laravelプロジェクトに必要な環境(PHP、MySQL、Redisなど)を自動的にセットアップしてくれる超優秀なやつです。
Sailを使うメリットはこんな感じ
-
簡単にLaravel開発環境を構築。Sailが自動的に必要なコンテナを用意。
-
異なるPCや環境でも、同じ環境でLaravelプロジェクトを実行できる。
-
各コンテナは独立しているので、プロジェクト間の依存関係の衝突を避けられる。
-
コマンド一つで環境を起動・停止できるので、環境管理がめちゃめちゃ楽。
例えば、sail up
コマンドを実行すると、Laravelプロジェクトに必要な環境が自動的に立ち上がり、sail down
コマンドで環境を停止できます。
他にも、sail php artisan migrate
のように、sail
コマンドの後に通常のLaravelコマンドを続けることで、Dockerコンテナ内でそのコマンドを実行できます。
説明はこの辺にして早速インストールしていきましょう!
コマンド(Mac,Win共通)
結論この2行。(WindowsはWSL2のコマンドラインで実行してください!)
curl -s https://laravel.build/example-app | bash
example-appは任意で変更可能です!
作ったディレクトリに移動して以下のコマンドを実行
./vendor/bin/sail up
このコマンドがdocker-compose upと同じでdocker-compose.ymlファイルを元にコンテナを作ってくれます!
これだけですぐに最新のLaravelを触れるのにはめちゃめちゃ感動しました、、
最後にいちいち./vendor/bin/sail
を打つのはめんどいのでsail
だけで実行できるようにエイリアスの登録方法も紹介します!
Macのエイリアス登録
まずMacでの登録の流れを説明します。
ホームディレクトリに移動
cd ~
-aオプションで隠しファイルの.zshrcがあるかを確認
ls -a
あればopenで開く
open ~/.zshrc
「i」を押してインサートモードにし、上の行をどこかに追加
alias sail="./vendor/bin/sail"
esc->:wqで保存
変更を保存させる
source ~/.zshrc
sailにエイリアスが登録されているか確認
sail up -d
これでコンテナが起動したらOKです!
Windows(WSL2)エイリアス登録
次にWindowsでの登録の流れを説明します。
(基本的な流れは同じです)
ホームディレクトリへ
cd ~
.bashrcがあるか
ls -a
.bashrcを開く(nanoでもいい)
vim ~/.bashrc
インサートモードでこの行をどこかに追記
alias sail="./vendor/bin/sail"
esc->:wq(保存)
変更を保存
source ~/.bashrc
sailにエイリアスが登録されているか確認
sail up -d
コンテナが起動したらOKです!
ちなみに以下のコマンドでもエイリアス登録はできます
alias sail='[ -f sail ] && bash sail || bash vendor/bin/sail'
ただ、このコマンドではターミナルを閉じたりしたら再度打ち直しが必要なので、エイリアスを永続化させたい場合は上記の方法で登録するのがオススメです!
以上!
Discussion