Laravel Homestead

Laravel Homestead でLaravel5.3の開発環境の構築を行う
Laravelには簡単にLaravel開発環境を構築できる「Laravel Homestead」と呼ばれる、
公式VagrantBoxが用意されている。今回は、Vagrantを用いてLaravel5.3の開発環境の構築を行う。

 

1. Laravel Homestead のインストールを実行する
Laravel Homesteadの利用には、統合開発環境としてグローバルで環境を共有する方法と、
プロジェクトごとに環境を構築する方法の2種類があり、
それぞれVirtualBoxVagrantのインストール後に実行する。
Windows環境の軸にコマンドを実行している。
次のコマンドでhomesteadをboxに追加する。

(ネットワーク環境によるが、20分ほどかかる)      

Windows環境でgitコマンド使えるようにする必要があるので、
以下サイトよりインストーラーをダウンロードし、exeファイルを実行する。
https://git-scm.com/download/win

vagrant box add laravel/homestead
git clone https://github.com/laravel/homestead.git Homestead

 

2. Homesteadに含まれるinit.shを実行する
clone実行後、Homesteadに含まれるinit.shを実行。
実行後、ホームディレクトリに.homesteadディレクトリが設置され、
設定ファイルのHomestead.yamlが作成される。C:\Vagrant\Homestead\src\stubs\Homestead.yaml
cd ./Homestead

bash init.sh

 

3. シェルスクリプトを追加
Homestead.yamlと同じ階層にafter.shを設置して、実行したいスクリプトを記述すると、vagrant環境実行時にHomestead環境に反映される。
今回は、PHPやOSのタイムゾーンを日本時間に設定されるように記述しておく。

≪after.shの内容≫
===========================
#!/bin/sh
sudo ln -sf /usr/share/zoneinfo/Japan /etc/localtime
sudo locale-gen ja_JP.UTF-8
sudo /usr/sbin/update-locale LANG=ja_JP.UTF-8

grep '^date.timezone = Asia/Tokyo' /etc/php5/fpm/php.ini
if [ $? -eq 1 ]; then
sudo cat >> /etc/php5/fpm/php.ini << "EOF"
date.timezone = Asia/Tokyo
mbstring.language = Japanese
EOF
fi
===========================

 

4. vagrant up を実行する
Laravel Homestead環境の構築を実行する
vagrant up

vagrant up実行時に以下のようなエラーメッセージが表示される
=================================
Bringing machine 'homestead-7' up with 'virtualbox' provider...
There are errors in the configuration of this machine. Please fix
the following errors and try again:

vm:
* The host path of the shared folder is missing: ~/Code
=================================

C:\Users\plus_ の配下に「Code」ディレクトを作成すれば解決する

※これでLaravel開発環境の構築が完了※