📔
Laravel Sail + Next.js のローカル環境構築
今回は、Laravel Sail に対して、初めてNext.jsを導入したので、
備忘録としてまとめていきます!
実行環境・使用したツールなど
・WSL
・Docker
・Git
今回は作成済みのLaravelプロジェクトに対して、Next.jsを導入します。
Laravelプロジェクトの作成方法については、過去の記事で触れているので、
こちらを参考にしてください。
Next.jsリポジトリのクローン
今回は公式のスターターキットから、Next.js Edition をlaravelプロジェクト内にクローンしていきます。
クローンしたフォルダ内にある、.env.exampleファイルを.env.localにリネームします。
cd laravel-app/
git clone https://github.com/laravel/breeze-next.git frontend
mv frontend/ .env.example frontend/ .env.local
docker-compose.ymlに追記する
次に、laravelプロジェクトのdocker-compose.ymlにNext.jsの設定を追記します。
frontend:
image: "node"
volumes:
- "./frontend:/var/www/html"
working_dir: "/var/www/html"
ports:
- "3000:3000"
command: bash -c "npm install && npm run dev"
laravel をAPIモードに変更
プロジェクトを起動します。
./vender/bin/sail up -d
Next.jsとlaravelを連携させるには、BreezeをAPIモードでインストールする必要があります。
以下のコマンドを実行してください。
./vendor/bin/sail shell
composer require laravel/breeze --dev
php artisan breeze:install api
続けて、マイグレーションを実行してDBを作成します。
php artisan migrate
localhostでlaravelのバージョンが表示され、
localhost:3000でlaravelのトップ画面が表示されれば成功です!
Discussion