Laravelプロジェクトをgit cloneからブラウザ表示までの手順

Laravelプロジェクトをローカル環境にgit cloneした後、そのままブラウザで動作確認してもエラーが返されます。自分のローカル環境で再び、アプリとして動作させるためのコマンドを実行する必要があります。今回は、その手順をメモ代わりに解説していきます。

 

【前提条件】

Git

PHP

Composer

以上がローカル環境にインストール済み

 

リモートのLaravelプロジェクトをクローン

$ git clone [リモートパス]

 

 

composerを実行して、vendorディレクトリを作成

git cloneしたプロジェクトには、composerが入っていないので、下記コマンドでインストールします。

$ cd [プロジェクト名]  //プロジェクトディレクトリに移動
$ composer install

 

 

.envファイルを作成

.env.exampleがデフォルトで入っていると思うので、.envにリネームします。

$ cp .env.example .env

 

.envファイルの用意ができましたが、アプリケーションキーが初期化されていないので設定していきます。

※ .envファイル:APP_KEY=SomeRandomString

 

アプリケーションキーの初期化

$ php artisan key:generate

これで.envファイルのAPP_KEYにランダムな文字列が追加されました。これをやっておくと、ユーザーのセッション情報、パスワードの暗号化をより強固にすることができます。

 

とりあえずこれで、Laravelプロジェクトがアプリとして動作できるようになりました。下記コマンドなどで動作確認してみてください。

$ php artisan serve

 

 

 

データベースやwebpackを使用する場合は以下に解説してあります。

データベースが必要な場合の手順

まず、データベースなどを使用する場合は、自分の環境に応じて.env書き換えておきましょう。

.env

APP_ENV=local
APP_DEBUG=true
APP_KEY=SomeRandomString

DB_HOST=127.0.0.1
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret

CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

※ Laravel5.5のデフォルト.env

 

下記のコマンドでマイグレーション(DB構築)を実行します。

//マイグレーション実行
$ php artisan migrate

//マイグレーションとシーディングを同時に実行
$ php artisan migrate --seed

 

ここでもし、[ReflectionException]とかClass ‘xxxxxx’ not foundのようなエラーが出たら、次のコマンドでオートロードの定義を更新すればOK。

$ composer dump-autoload

 

ちなみに、次のコマンドで「マイグレーション+seed実行」をやり直すことができます。マイグレーションファイル再定義したときにとても便利です。

$ php artisan migrate:refresh --seed

 

これで、Laravelのプロジェクトをブラウザで確認して、問題なければOKです。

 

webpackを使用する場合の手順

JavaScriptなどがwebpackで導入されているプロジェクトでは、webpackをコンパイルする必要があります。

 

nodeモジュールをいれるためにプロジェクトにnpmをインストールする必要があります。

$ npm install

 

以下のコマンドでwebpackをコンパイルする

$ npm run dev

 

これで、Laravelのプロジェクトをブラウザで確認して、問題なければOKです。

 

 

まとめ

今回は、備忘録も兼ねて投稿させていただきました。この記事が皆さんの活動を手助けになれば幸いでございます。