Happy Web Engineer
Last updated on

Laravel Sail入門|開発環境をシンプルに整える基本ステップ


はじめに

Laravelは、PHPで最も人気のあるフレームワークのひとつです。美しいコードと豊富な機能を備えており、Webアプリケーション開発において高い評価を受けています。しかし、初めてLaravelを触るときに「環境構築でつまずいた…」という声は少なくありません。

そこで登場するのが Laravel Sail です。
Sailは、Laravel公式が提供する Dockerベースのローカル開発環境 で、複雑なセットアップをしなくても、誰でもすぐにLaravelを動かせるようにしてくれます。

この記事では、Laravel Sailの仕組みから、導入方法、便利な使い方、さらに実際にアプリケーションを動かす流れまでを解説します。初心者でも「とりあえずLaravelを動かしてみたい!」という人、中級者で「Dockerで統一したい!」という人、どちらにも役立つ実践的な内容です。


Laravel Sailとは?

Sailの正体

Laravel Sailは、Laravelチームが公式に提供している Docker Composeをベースにした開発環境ツール です。

通常、Laravelを動かすためには以下のような準備が必要になります。

  • PHP(対応バージョン)
  • Composer
  • MySQLやPostgreSQLなどのデータベース
  • RedisやMailhogなど補助サービス

これらを自分のPCにインストールしてバージョンを合わせるのは面倒ですし、開発メンバー全員で同じ環境を揃えるのはさらに大変です。

Sailを使うと、Dockerコンテナの中にこれらがすべて含まれた環境を自動で用意してくれるため、複雑な手作業は不要になります。


Laravel Sailを導入する方法

前提条件

  • Docker Desktopがインストールされていること(Mac / Windows)
  • Linuxの場合はDockerとDocker Composeが動作する状態になっていること

ステップ1:新規プロジェクトを作成

まずはComposerでLaravelプロジェクトを作成します。

curl -s "https://laravel.build/example-app" | bash

example-app の部分はプロジェクト名に置き換えてください。

このコマンドは裏でComposerを使い、Laravelプロジェクトを生成すると同時にSailの設定も組み込んでくれます。

ステップ2:プロジェクトへ移動

cd example-app

ステップ3:Sailを起動

./vendor/bin/sail up

ブラウザで http://localhost にアクセスすると、Laravelの初期画面が表示されるはずです。


よく使うSailコマンド

Sailは基本的に ./vendor/bin/sail を使って操作しますが、以下のようにエイリアスを設定しておくと便利です。

alias sail='[ -f sail ] && sh sail || sh vendor/bin/sail'

これで sail upsail artisan といった形で実行できます。

代表的なコマンド

  • サービス起動
    sail up -d
    
  • Artisanコマンド実行
    sail artisan migrate
    
  • Composerコマンド実行
    sail composer require laravel/breeze --dev
    
  • npm / pnpmコマンド実行
    sail npm run dev
    
  • テスト実行
    sail test
    

Sailで利用できるサービス

Sailの docker-compose.yml には、よく使われるサービスが定義されています。

  • MySQL / PostgreSQL
  • Redis
  • Mailhog(メール送信確認用)
  • Meilisearch(全文検索)
  • Selenium(ブラウザテスト)

必要に応じて追加・削除できます。


実践例:SailでLaravel Breezeを導入する

Sailを使えば、アプリケーションの機能追加も簡単にできます。
ここでは、Laravelの認証機能を提供する Breeze を導入してみましょう。

ステップ1:Breezeをインストール

sail composer require laravel/breeze --dev

ステップ2:Breezeをセットアップ

sail artisan breeze:install

インストール時に「Blade」「Vue」「React」「Inertia」などのフロントエンドを選択できます。

ステップ3:フロントエンドをビルド

sail npm install
sail npm run dev

ステップ4:マイグレーション実行

sail artisan migrate

これで、ユーザー登録・ログイン機能が一通りそろった状態になります。


実践例:Jetstreamで本格的なアプリを試す

もしチーム開発や本格的なアプリを作りたいなら、Laravel Jetstream を試すのもおすすめです。

JetstreamはBreezeの上位版で、以下のような機能を持ちます。

  • 認証(ログイン・登録・パスワードリセット)
  • 2要素認証
  • プロフィール管理
  • APIトークン管理(Sanctum)
  • チーム管理

Jetstream導入手順

sail composer require laravel/jetstream
sail artisan jetstream:install inertia
sail npm install && sail npm run dev
sail artisan migrate

これだけで、本格的なユーザー管理付きアプリが完成します。


Sailと他の方法との比較

方法

特徴

メリット

デメリット

ローカル直接インストール

PCに直接PHPやMySQLを入れる

シンプル

環境差異が出やすい

MAMP/XAMPP

GUIで一括管理

初心者向けで簡単

Laravel最新版に追随しにくい

Homestead

Vagrantベース

安定、公式

重い、設定が複雑

Sail

Dockerベース

軽量、公式、統一環境

Docker必須


まとめ

Laravel Sailは、Laravel開発環境をDockerで簡単に構築できる公式ツール です。

  • 複雑なセットアップ不要
  • コマンド一発で環境起動
  • BreezeやJetstreamも簡単に導入可能
  • チーム開発・学習環境として最適

初心者が学習を始めるとき、中級者がチーム開発をするとき、どちらにもおすすめできるシンプルかつ強力なツールです。


関連記事

👉 Dockerを使った開発環境構築の基本ステップ|初心者から始めるコンテナ開発入門
👉 初心者が最短でWebエンジニアになるための学習プラン|独学から就職・転職までのロードマップ
👉 Laravelプロジェクトでテストコードを書く重要性とは?
👉 Git初心者が最初に覚えるべきコマンド10選