Laravel Sailは、Dockerを利用してLaravelの開発環境を驚くほどシンプルにしてくれるツールです。
この記事では、Sailを日常的に使う上で欠かせない必須コマンドを「チートシート」としてまとめます。
さらに、なぜローカルPCにPHPがなくてもコマンドが実行できるのか、その仕組みについても解説します!
なぜsailコマンドでPHPが動くのか?
まずこの点がLaravel Sailを理解する上で最も重要なポイントです。
通常php ...のようなコマンドを実行するには、お使いのPC(ローカル環境)にPHPがインストールされている必要があります。また、 php artisan ... であればPHPに加えてLaravel、 npm ... であればNode.jsのインストールが必要です。
しかし、Laravel Sailを使う場合、実際のコマンドはあなたのPC上ではなく、全部乗せのDockerコンテナ内で実行されています。
sailコマンドを冒頭につけることで、Laravel Sail経由で各コマンドが実行されます。
ゆえに、Laravel SailとDockerだけのインストールで済んでしまいます。

【コマンド実行の仕組み】
- ターミナルで
sail artisan migrateと入力します。 - sailスクリプトがその命令を受け取ります。
- sailは、バックグラウンドで起動しているLaravelアプリケーション用のDockerコンテナ(内部にPHPやComposer、Artisanコマンドが全て揃っている)を探します。
- artisan migrate という命令を、そのコンテナの中に送り込みます。
- コマンドがコンテナ内部で実行されます。
- 実行結果があなたのターミナルに返ってきます。
この仕組みのおかげで、私たちのローカルPCに必要なのはDockerとプロジェクトファイルだけで、PHPやデータベースソフトを直接インストールする必要が一切ありません。これにより、PC環境を汚さずに、クリーンな状態で開発を進めることができます。
もっと便利に!sailコマンドのエイリアス設定
毎回 ./vendor/bin/sail と入力するのは少し長いですよね。
ターミナルの設定(エイリアス)を使えば、これを sail だけで実行できるようになります。
Mac / Linux (WSL) の場合
お使いのシェル設定ファイル(.zshrcまたは.bashrc)に、以下の1行を追記します。
ターミナルを開き、このコマンドを入力するだけでOKです。
# Zshをお使いの場合
echo "alias sail='bash vendor/bin/sail'" >> ~/.zshrc# Bashをお使いの場合
echo "alias sail='bash vendor/bin/sail'" >> ~/.bashrc設定を反映させるために、ターミナルを再起動するか、source ~/.zshrc(またはsource ~/.bashrc)を実行してください。
これで以降は sail とだけ入力するだけよくなります!
Windows (PowerShell) の場合
まずホームディレクトリへ移動し、設定ファイル(.bashrc)があるか確認します。
cd ~
ls -aCLI上のエディタvimで.bashrcを開きます。(nanoでもいい)
vim ~/.bashrcインサートモードでこの行をどこかに追記します。(迷ったら最後尾にでも)
alias sail="./vendor/bin/sail"esc->:wqで変更を保存します。また次のコマンドを入力するとずぐに変更を反映できます。
source ~/.bashrcこれで以降は sail とだけ入力するだけよくなります!




