プログラミング学習の最初の壁として多くの人が挙げるのが「開発環境の構築」です。
「解説サイトの通りにしたのに動かない…」
「謎のエラーが出て、解決方法が分からない…」
このような経験から、コードを書き始める前に学習意欲が削がれてしまうのは、非常にもったいないことです!
この記事では、PHPの人気フレームワークであるLaravelを、Laravel Sailという公式ツールを使って、誰でも簡単かつ迅速に構築する方法を解説します。
が、難しいDockerの知識はほとんど不要なので、ご安心ください。
1. Laravel Sailとは?
まずは、今回利用する技術の全体像を掴みましょう。「Laravel」「Docker」「Sail」の3つのキーワードがポイントです。
Laravel(ララベル)
Laravelは、世界中で非常に人気のあるPHPのWebアプリケーションフレームワークです。PHPの中ではダントツで利用率が高く、更新頻度も活発なOSSです。
Webアプリケーション開発で頻繁に必要となる「ログイン機能」や「データベース連携」といった機能を、開発者がゼロから作らなくても良いように、便利な部品として数多く提供してくれます。
これにより、開発者は本来の目的であるサービス開発に集中でき、高速で安全なアプリケーションを構築できます。
Docker(ドッカー)
Dockerは、お使いのパソコンの中に、OSから隔離された仮想的な開発環境(コンテナ)をいくつも作れる技術です。
昔は、開発に必要なソフトウェア(PHP, データベースソフトなど)を直接PCにインストールしていましたが、これには以下のような問題がありました。
- PCの環境が複雑化し、管理が難しくなる。
- プロジェクトごとにPHPのバージョンを変える、といったことが簡単にできない。
- 自分のPCでは動くのに、他の人のPCや本番サーバーでは動かない、といった「環境差異」の問題が頻発する。
Dockerは、プロジェクトごとに必要なソフトウェア一式を「コンテナ」としてパッケージ化することで、これらの問題を解決します。このコンテナの設計図を共有すれば、誰でも、どこでも、全く同じ環境を寸分違わず再現できるのが最大のメリットです。
Laravel Sail(セイル)
Laravel Sailは、このDockerを利用したLaravel専用の開発環境です。本来Dockerを扱うには、docker-compose.ymlという設定ファイルを自分で書く必要がありますが、Sailはこの面倒な設定を全て自動で行ってくれます!
私たちはいくつかの簡単なsailコマンドを覚えるだけで、Dockerの恩恵を受けることができます。
OSの違いを吸収し、誰でも同じ手順で開発を始められる、まさに初学者のための救世主とも言えるツールです。
PHPやLaravelの環境構築方法は複数の方法がありますが、Laravel Sailでは「とにかく早く簡単に完了できる」「Dockerが使える」「アプリを完成させた後のホスティングも楽」など、ほかにない恩恵があります。
2. Laravel Sailの環境構築の手順
ここからは、実際に手を動かして環境を構築していきます。一つずつ丁寧に進めていきましょう!
なお、本記事ではDockerおよびDocker Desktopはすでにインストールされているものとして解説していきます。
ターミナル(Macの場合)またはPowerShell(Windowsの場合)を開き、プロジェクトを作成したいディレクトリに移動します。
ここでは例としてデスクトップに作成します。
cd Desktop次に、以下のコマンドを実行します。これが最も基本的なコマンドで、example-appの部分は、ご自身の好きなプロジェクト名に変更可能です。
Macの場合
curl -s "https://laravel.build/example-app" | bashWindowsの場合
curl -s https://laravel.build/example-app | bashこのコマンドを実行すると、Laravelプロジェクトの作成と、Sail(Docker)環境のセットアップが全自動で行われます。初回は必要なファイルのダウンロードなどで5分〜15分ほど時間がかかりますが、気長に待ちましょう。
Please provide your password so we can make some final adjustments to your application's permissions.
Password:このときパスワードを求められる場合があります。
そのときは管理者パスワードを入力ください。管理者パスワードとは、 ”PCを起動して各々のユーザーにログインするときに使用するパスワード”です。
Thank you! We hope you build something incredible. Sail on! というメッセージが表示されたら成功です。



![SQLSTATE[HY000] [1044] Access deniedが表示されたLaravelのエラー画面](https://images.microcms-assets.io/assets/674fbf2fe21c4dc1999adeb8abf750c1/0e9a33e2c9cc48528a80a0b7303cfcaf/Screenshot%202025-08-15%20at%2013.09.13.png?w=1280&fm=webp&q=75)





