目次
資料収集中
- Docker-Laravel環境のテンプレートをベースに構築します
最強のLaravel開発環境をDockerを使って構築する
https://github.com/ucan-lab/docker-laravel - 最終的にLaravelBreezeを入れたいのでNode.jsとnpmを追加でインストール
Ubuntu18.04で任意のバージョンのNode.jsをインストールする方法 - Laravel8で新登場 Laravel Breezeでの認証機能を完全理解
公式
- Laravel Breeze(https://github.com/laravel/breeze)
注意
- ucanさんの作ってくれたテンプレートがとても使いやすい。
- Docker環境とLaravelまでを1コマンドで環境構築してくれる!
- 通常docker compose buildをしてdockercompose up -dと一連の定形コマンドを入力するが、手間を省くためにMakefileを作ってくれている。
- これは1コマンドで上記のような一連のコマンドが実行されるので、とても楽になる。ただし、本来のdocker composeのコマンドを忘れてしまうので注意。
- DBの初期設定は、DB名:laravel、ユーザー名:phper、パスワード:secret
テンプレートから環境構築
流れ
- あらかじめ、サーバーにログインしておく(自分の場合はrootで操作)
- ucanさんのテンプレをクローンする
- make create-projectする
- .gitを削除する
- 必要があればNode.jsなどを追加インストールする
環境のインストール
テンプレートをダウンロード
ucan-labさんのテンプレートをダウンロード
git clone https://github.com/ucan-lab/docker-laravelフォルダ名を変更(任意)
練習用なのでsample1に変更
mv docker-laravel sample1構築
テンプレに基づき、PHP、NGINX、MySQL、Laravel環境を構築する。
cd sample1
make create-projectGitの削除
このまま使用するとucanさんのGitにプッシュすることになり大迷惑。Git情報を削除する。
rm -r -I .git追加のインストール
Node.jsとnpm、Laravel Breezeが必要であれば、追加でインストールする。
既存のプロジェクトをコピーしてくる
すでに開発しているLaravel Breezeのプロジェクトをコピーして構築する。
流れ
- ucanさんのテンプレをクローンする
- srcフォルダを作ってプロジェクトをコピーする
- make installする
- appコンテナに入る
- Node.jsとnpmの最新版を入れる
- php artisan migrate
- npm install
- npm run build
テンプレートをダウンロード
ucan-labさんのテンプレートをダウンロード
git clone https://github.com/ucan-lab/docker-laravelフォルダ名を変更(任意)
練習用なのでsample1に変更
mv docker-laravel sample1プロジェクトのコピー
srcフォルダを作ってプロジェクトをコピーする
cd sample1
mkdir src何らかの方法を使ってプロジェクトをコピー
cp -r ../hello-laravel/src .環境のインストール
make install追加のインストール
Node.jsとnpm、Laravel Breezeが必要であれば、追加でインストールする。
適用
マイグレーションを実行。
php artisan migratepackage.jsonファイルにリストされているパッケージ(依存関係)をインストール⚠要調査
npm installpackage.jsonファイル内のscriptsオブジェクトに定義されたbuildスクリプトを実行⚠要調査
npm run build追加のインストール(任意)
appコンテナに入る
以下の作業はappコンテナ内で行う。
- Node.jsとnpmのインストール
- Laravel Breezeのインストール
make appNode.jsとnpmのインストール
aptでインストールが簡単だが、結構古いバージョンがインストールされてしまう為、nパッケージを使って最新版をインストールする。しかし、nパッケージを動かすにはNode.jsとnpmが必要というパラドクス😿
- aptでNode.jsとnpmをインストール
- nパッケージをインストール
- nパッケージでNode.jsとnpmのお好みのバージョンをインストール
- aptでインストールしたNode.jsとnpmをアンインストール
aptでNode.jsとnpmをインストール
古くても構わないのでとりあえずインストール。
apt update
apt install nodejs npm -y-y…コマンドの途中でYesNoを問われた場合、全てyesとする。
nパッケージをインストール
npm install -g n最新版のNode.jsとnpmをインストール
ここでは最新版ではなく、LTS版をインストール。(LTS…Long Term Support(長期サポート)版)
n ltsまたは
n stable # 安定版をインストール
n latest # 最新版をインストール
n 12.8.1 # バージョンを指定してインストール
n ls-remote # バージョン一覧を表示(最新から20件)パスの修正
インストール後、「nodeコマンドの場所が変更され、古い場所が現在のシェルに記憶されている可能性があります。」という旨のメッセージが表示された場合は指示通りのコマンドを入力
hash -raptでインストールした古いNode.jsとnpmを削除
apt purge nodejs npm -y確認
インストールが無事されたか、パスが通ることも含めて確認。
node -v
npm -v
n --versionLaravel Breezeのインストール
Laravel Breezeのインストール
引き続きappコンテナ内で作業を続ける。
composer require laravel/breeze --dev–dev…公式では指定しているが、一般の記事では指定していない。⚠要調査
Bladeのインストール
Laravelのトップページに認証機構周りのセットを追加
php artisan breeze:install blade適用(省略して良さそう)
公式では下記のコマンドでBlade関連のファイルを適用するように書いてあったが、実行しなくても動作しているようだ。⚠要調査:npm run dev は実行しないほうが良さそうだ
php artisan migrate
npm install
# npm run dev これは実行するとおかしくなる。Dockerと競合している??あとから追加でしたこととりあえずまとめ
- Laravel Breezeの認証画面などが英語のため、手作業で日本語化は面倒くさかった。
下記の記事通りに実行したら簡単に日本語になった。ソースは英語のまま、ビルド時に置換するのかな?
Laravel Breezeを一瞬で日本語化するパッケージ - 何はともあれ
https://bootcamp.laravel.com/
https://readouble.com/laravel/10.x/ja/starter-kits.html - ユーザー登録は、個人がRegistaページからするのではなく、管理画面からCSVで登録したよね。
管理画面については:簡単に管理画面を作れるlaravel-adminのセットアップ方法を解説
CSVについては:【Laravel 】Laravel-adminにCSVインポート機能を実装する方法 - つづいてやってみたい
【Laravel】Breeze導入後のテンプレートの書き方(サイト構築のための備忘録)