1.

Laravel新規プロジェクト作成|composer create-projectと初期設定

編集
この記事の要点
  • Laravel 新規プロジェクトの作成は composer create-project laravel/laravel プロジェクト名 が基本
  • Laravel Installer(laravel new)を使うと対話的にスタックや認証を選択できる
  • バージョン指定は laravel/laravel:^11.0 のように Composer の制約構文で記述
  • 作成後は .env のコピー → php artisan key:generate → DB 接続情報設定 → php artisan migrate が定番
  • php artisan serve で開発サーバが起動(既定 http://127.0.0.1:8000

Laravel プロジェクトの作り方

Laravel の新規プロジェクトは大きく 2 つの方法で作れます。Composer 経由Laravel Installer 経由です。どちらも結果は同じ Laravel スケルトンですが、Installer は対話形式で初期構成(認証スタック / テストフレームワーク / DB ドライバ等)を選べるのが特徴です。

方法 1: Composer で作成(最も基本)

# 最新版で作成
composer create-project laravel/laravel my-app

# バージョン指定(例: Laravel 11 系)
composer create-project "laravel/laravel:^11.0" my-app

# 開発用キャッシュを使わず最小構成で
composer create-project laravel/laravel --prefer-dist my-app

カレントディレクトリ直下に my-app/ が作られ、必要な依存パッケージがダウンロードされます。完了後はそのまま cd my-app で移動して開発を始められます。

方法 2: Laravel Installer(推奨)

Laravel Installer はグローバルに 1 度入れておけば、以後は laravel new 一発で対話的にプロジェクトを生成できます。Starter Kit(Breeze / Jetstream)の選択や、DB ドライバ・テストフレームワーク選択を CLI で案内してくれます。

# Installer を 1 度だけグローバル導入
composer global require laravel/installer

# パスを通す(.bashrc / .zshrc に追加)
export PATH="$HOME/.composer/vendor/bin:$PATH"

# 新規作成(対話的)
laravel new my-app

# 主なオプション
laravel new my-app --git           # 自動で git init + 初コミット
laravel new my-app --pest          # Pest を使う
laravel new my-app --breeze        # Breeze スタータキット
laravel new my-app --jet           # Jetstream スタータキット

作成直後の初期セットアップ

  1. 環境変数ファイル: .env.example をコピーして .env を作成(composer create-project 経由なら自動で生成済み)
  2. アプリケーションキーを生成: php artisan key:generate
  3. DB 接続情報.env に設定(DB_CONNECTION / DB_HOST / DB_DATABASE 等)
  4. マイグレーション実行: php artisan migrate
  5. シンボリックリンク(公開ストレージ用): php artisan storage:link
  6. フロントエンド依存導入: npm install & npm run dev
cd my-app

# 環境ファイル準備
cp .env.example .env          # create-project では既に生成されている
php artisan key:generate

# DB(.env の DB_* を編集してから)
php artisan migrate

# ストレージリンク
php artisan storage:link

# フロントエンド
npm install
npm run dev

# 開発サーバ起動
php artisan serve
# → http://127.0.0.1:8000

主要ディレクトリ構成

ディレクトリ役割
app/モデル / コントローラ / サービス(アプリのコア)
routes/ルート定義(web.php / api.php
resources/Blade テンプレート / JS / SCSS など
database/マイグレーション / シーダー / ファクトリ
config/設定ファイル群
public/ドキュメントルート(index.php
storage/ログ / キャッシュ / アップロード
vendor/Composer 依存(.gitignore 対象)

前提環境

LaravelPHP主要拡張
11.x8.2 以上BCMath, Ctype, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML
10.x8.1 以上同上
9.x8.0 以上同上

加えて Composer 2.x、Web サーバ(開発時は php artisan serve でも可)、必要に応じて Node.js / npm(Vite ビルド用)が要ります。

Sail(Docker 環境)で作る

ローカルに PHP / MySQL を入れたくない場合、公式 Docker 環境 Laravel Sail で一発立ち上げできます。

# Sail 同梱で作成(mysql / pgsql / redis などを選ぶ)
curl -s "https://laravel.build/my-app?with=mysql,redis" | bash

cd my-app
./vendor/bin/sail up -d
./vendor/bin/sail artisan migrate

よくあるトラブル

症状原因 / 対処
composer create-project が失敗PHP バージョン / 拡張モジュール不足。php -v / php -m で確認
No application encryption keyphp artisan key:generate 未実行
SQLSTATE[HY000] [2002]DB 接続情報誤り。.envDB_HOST / ポート / 認証情報を見直し
403 / 404 が出るドキュメントルートが public/ になっていない(Apache / Nginx 設定)
Storage の画像が 404php artisan storage:link 忘れ

関連

  • Laravel — フレームワーク本体
  • Composer — PHP の依存管理
  • php artisan / Artisan コマンド一覧
  • .env / 環境変数
  • マイグレーション / Eloquent
編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. 新規プロジェクトの作成
  2. サーバーの起動
  3. マイグレーションファイルの作成
  4. マイグレーションの実行(migrate)
  5. モデルの作成
  6. 全ルートを確認
  7. Laravelのバージョンの確認方法

最近更新/作成されたページ