AWS Linux 2023にLaravelデプロイ[4] 〜Laravelのデプロイ

2023/12/03

このページではgithubからLaravelプロジェクトをcloneし、表示までを行う。

gitclone

nginxのインストールの際にrootを/var/www/publicにしたのでLaravelプロジェクトを/var/www 配下に配置することにする。

cdで移動

$ cd /var/www

リポジトリを指定してclone

$ git clone -b {ブランチ名} git@github.com:{リポジトリ} .

なので、例えば、Accountというアカウントのtest_pjというリポジトリのmainというブランチをcloneする場合は、

$ git clone -b main git@github.com:Account/test_pj.git .

最後にドットをつけるとプロジェクト名のフォルダはなしで直に展開される。

権限変更

storageとキャッシュフォルダの権限を変更する。

$ sudo chmod -R 777 storage
$ sudo chmod -R 777 bootstrap/cache

各種インストール

バックエンド側

$ composer install

フロント側

$ npm install
$ npm run build

envファイルの作成

exampleからコピーして.envファイルを作成する

$ cp .env.example .env

キーを作成

$ php artisan key:generate

.envを編集

環境に合わせて.envを編集する。

キャッシュをクリア

$ php artisan config:clear

※Laravelアプリケーションをデプロイしたサーバーを冗長構成にする場合は、.envファイルに設定するAPP_KEYは同じ値にする必要がある。

(2台構成にしようとして少しハマりました・・・)

マイグレーション

$ sudo -u nginx php artisan migrate:fresh --seed

これ以降は、php artisanコマンドはユーザーを指定して行うようにしている。ログファイルやキャッシュファイルでパーミッションエラーになってしまうため。

RDSやDBの設定は端折りましたが、これで一通り、Laravelプロジェクトのデプロイまで終了です。