HomesteadをつかってLaravel5を動かしてみる

More than 1 year has passed since last update.

趣味PHPerなので、Laravel5を実際にさわってみることにする。

ブログにも書いてます。


Laravelとは

最近巷ではやっているphpのフレームワークで、近年のモダンな書き方をとりいれていて

今風にphpが書ける。

Laravel 公式サイト


手順

実際にインストールして、動かすまでを記載します。


各種インストール


  • Vagrant

    公式サイトからdmgファイルをダウンロードしてきてインストールする。


  • Virtual Box

    公式サイトからdmgファイルをダウンロードしてインストールする。


  • composer


$ curl -sS https://getcomposer.org/installer | php

$ mv ./composer.phar /usr/local/bin/composer

あとPATHも通す、もしくはPATHの通っているディレクトリに移動する。


Boxの作成・Homestead準備

HomesteadのBoxを追加する。

$ vagrant box add laravel/homestead

$ git clone https://github.com/laravel/homestead.git Homestead

cloneしたHomesteadディレクトリに移動し、init.shを実行する。

$ cd ./Homestead

$ bash init.sh

これで、~/.homestead 配下に必要なファイルたちがどこどこ作られていく。

vagrantで仮想マシンを立ち上げたとき用の鍵ペアを作成する。

(すでにある場合はつくらなくても大丈夫?)

ssh-keygen -t rsa -C "you@homestead"


設定ファイル記述

設定ファイルの場所

~/.homestead/Homestead.yaml

以下の様に修正する

(修正がいらない箇所は省略します)

※作業用ディレクトリを~/workとし、その配下に後述のlaravelプロジェクトの作成の際にlaravelディレクトリを作成する。


Homestead.yaml

providor: virtualbox

authorize: ~/.ssh/id_rsa.pub

key:
- ~/.ssh/id_rsa

folders:
- map: ~/work/laravel
to: /home/vagrant/Code/laravel

sites:
- map: homestead.app
to: /home/vagrant/Code/laravel/public


providorにはvirtualboxを指定する。

authorizeとkeyには以前の手順で作成したキーペアへのパスを指定する。

foldersはローカルと、vagrant上で同期をとるためのマッピング。

sitesはurlと公開フォルダのマッピングを行う。

この場合 http://homestead.app にアクセスすると/home/vagrant/Code/laravel/public配下がドキュメントルートとなる。


Hostsの設定

/etc/hostsに以下の記述を追加する。

192.168.10.10 homestead.app

192...の部分はHomestead.yamlに記載されているipを、

その後はsitesのmapの方のurlを記述する。


Laravel Projectの作成

作業用ディレクトリに移動して以下のコマンドを打つ

$ composer create-project laravel/laravel laravel --prefer-dist

そうするといろいろダウンロードが始まって、laravelフレームワークが使えるようになる。

以下のコマンドでvagrant立ち上げる

$ homestead up

ブラウザでhttp://homestead.app にアクセスして以下のページになればOK

laravelスクショ.png


うまく行かない場合

いろいろうまくいかなかった場合のメモ。


nginx php no input file specifiedと表示される

nginxがphpファイルを見つけられていないので、hostsや、Homestead.yamlを要確認


vendor/autoload.phpが無いよって怒られる。

以下の様な画面が表示され、vendor/autoload.phpが無いよって言われる

laravelエラー.png

vagrantにsshでログインしてcomposer installで色々インストールする。

$ homestead ssh

$ cd /home/vagrant/Code/laravel/
$ composer install


no supported encrypted foundと怒られる

以下の様な画面が表示された場合。

Laravelエラー2.png

プロジェクトのディレクトリに移動してkey:generateする

$ homestead ssh

$ cd /home/vagrant/Code/laravel/
$ php artisan key:generate


参考させていただいたサイト様