こんにちはー!むちょこです。
今回は既存のLaravelプロジェクトをDockerなしで自分の開発環境(Linux)で動かすための手順をご紹介します。
※プロジェクトはGit管理されていることが前提です。
1. 環境構築
プロジェクトのサーバ要件を満たす環境を予め構築しておきます。
LAMP環境の構築方法はこちらをご覧ください✨
LAMP環境の構築手順2. composerをインストール
https://getcomposer.org/download/
上記のサイトの”Command-line installation”の手順に沿って、composerをインストールします。
インストールできたら、パスが通る場所に移動させます。
$ sudo mv composer.phar /usr/local/bin/composer
念のためパスが通ったことを確認しましょう。
$ composer --version
Composer version 1.10.1 2020-03-13 20:34:27
このようにcomposerのバージョンが表示されたら大丈夫です。
3. プロジェクト用のディレクトリを作成
プロジェクトのコードを置くための任意のディレクトリを作成し、所有者を作業するユーザに変更しておきます。
LAMP環境の構築手順に従って環境構築された方は、ディレクトリ名をドメインと同じにしてください。
$ sudo mkdir /var/www/html/[任意のディレクトリ]
$ sudo chown [作業ユーザ]:[作業グループ] /var/www/html/[任意のディレクトリ]
$ cd /var/www/html/[任意のディレクトリ]/
4. git clone
3で作成したプロジェクト用のディレクトリ下で、プロジェクトのリポジトリをcloneします。
$ git clone [リポジトリURL]
5. パスを通す
$ export PATH=$PATH:$HOME/.config/composer/vendor/bin
6. ドキュメントルートを設定する
LAMP環境の構築手順に沿って環境構築された場合は、既に設定済みです。そのまま7に進んでください。
他の手順で構築された場合は、ドキュメントルートがcloneしたプロジェクトのpublicディレクトリになるように設定し、Apacheを再起動してください。
$ httpd -t
Syntax OK
$ sudo systemctl restart httpd
7. Laravelの設定
通常.envファイルはリポジトリに入っていないと思いますので、自分で用意します。
.env.exampleファイルを元に、自分の環境に合わせた値を設定してください。
$ cd [プロジェクト名]
$ cp .env.example .env
$ vim .env
composer.jsonに記述されたライブラリをインストールします。
$ composer install
エラーが発生したら適宜対処します。
アプリケーションキーも生成しましょう。
$ php artisan key:generate
Laravel開発に必要なNode.jsとnpmもインストールします(各バージョンはプロジェクトに合わせてください)。
$ sudo yum -y install nodejs npm –enablerepo=epel
$ node -v
v6.17.1
$ sudo npm install -g n
$ npm -v
3.10.10
package.jsonに記述されたパッケージをインストールします。
$ npm install
Laravel Mixを実行し、アセットをコンパイルします。
本番環境として使う場合は”dev”部分を”production”に変更して実行してください。
$ npm run dev
マイグレーションを実行します。
$ php artisan migrate
これで既存のLaravelプロジェクトがコピーできたはずです。
8. 動作確認
PHPUnitの実行やブラウザからの操作で、本番環境と同様に動くかテストします。
$ ./vendor/bin/phpunit