Blog スタッフブログ

Homesteadを使ってLaravel5開発環境を構築する

Category | Blog
Tag | / /
/ 11,942views

こんにちは、制作の奥田です。
最近、PHPのフレームワークとして人気急上昇中のLaravelを使って開発をしました。
最新版のLaravel5はまだまだドキュメントが少なく試行錯誤しながらではありますが、少しずつブログに書いていければいいなと思います。
Laravelはローカル開発環境としてHomestead(ホームステード)というVagrantboxを提供してくれているので今回はHomesteadを使ってローカル開発環境を構築してみたいと思います。
手順は大体ここに書いてあるとおりです。

Table of contents

  1. VirtualboxとVagrantのインストール
  2. Vagrant boxの追加
  3. Homestead CLIのインストール
  4. Homestead.yamlの編集
  5. Vagrant boxを起動する
  6. Laravelプロジェクトの作成
  7. 参考にさせていただいた記事
laravel-slant

Laravel
Laravel は、MVCのWebアプリケーション開発用の無料・オープンソースのPHPで書かれたWebアプリケーションフレームワークである。LaravelはMITライセンスの下でリリースされており、そのソースコードはGitHubにホスティングされている。マイクロソフトの.NETの開発に関わっていたTaylor Otwell が開発した。
PHPフレームワークのに2013年12月の人気調査によると、Laravelは2014年における最も有望なPHPフレームワークの1つとして挙げられた。LaravelはPHP 5.3以上を対象とする新しいプロジェクトである。http://laravel.com/

VirtualboxとVagrantのインストール

まずは仮想環境としてVirtualboxとVagrantが必須なのでそれらをインストールします。
下記よりダウンロードしてインストールします。

Virtualboxのダウンロード

Vagrantのダウンロード

Vagrant boxの追加

ターミナルを起動し、下記コマンドを実行します。

$ vagrant box add laravel/homestead

途中でプロバイダーは何を使うか聞かれるので 1 のVirtualboxを選択します。1 と入力しEnterを押します。

==> box: Loading metadata for box 'laravel/homestead'
    box: URL: https://atlas.hashicorp.com/laravel/homestead
This box can work with multiple providers! The providers that it
can work with are listed below. Please review the list and choose
the provider you will be working with.
 
1) virtualbox
2) vmware_desktop
 
Enter your choice:1

するとダウンロードが開始されるのでしばらく待ちます。(15分ほどかかります)

==> box: Adding box 'laravel/homestead' (v0.3.0) for provider: virtualbox
    box: Downloading: https://atlas.hashicorp.com/laravel/boxes/homestead/versions/0.3.0/providers/virtualbox.box
==> box: Successfully added box 'laravel/homestead' (v0.3.0) for 'virtualbox'!

Homestead CLIのインストール

公式ドキュメントではGitでcloneしていますが、Homesteadコマンドが使えるようなのでComposerを使ってインストールします。
Composerがない場合は以下のコマンドでインストールし、Composerを使えるようにします。

$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer

Homestead CLIのインストール

composer global require "laravel/homestead=~2.0"

~/.composer/vendor/bin/homesteadが追加されるので、homesteadコマンドが使えるように ~/.composer/vendor/binにパスを通します。

$ PATH=~/.composer/vendor/bin:$PATH

起動時にもパスが通るように.bash_profileを作成し以下を記述しておきます。

$ vi ~/.bash_profile
export PATH=~/.composer/vendor/bin:$PATH

Homestead.yamlの編集

以下を実行すると、Vagrantfileではなく ~/.homesteadにHomestead.yamlというYamlファイルが作成されるのでそこに設定を記述します。

homestead init

普通にエディターで開いてもいいですが以下のコマンドでHomestead.yamlをエディターで開くことができます。

homestead edit
---
ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

folders:
    - map: ~/Code
      to: /home/vagrant/Code
 
sites:
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public

databases:
    - homestead

variables:
    - key: APP_ENV
      value: local

秘密鍵・公開鍵はなければ作成してください。(ssh-keygen)
foldersは共有ディレクトリの場所を指しています。(必要であれば任意で変更してください。)
mapはローカルの、toはVagrant側のディレクトリを指定します。
sitesはドキュメントルートの場所を指定ます。
Laravelというプロジェクトを作成した場合、ドキュメントルートはLaravel/publicになります。

Vagrant boxを起動する

まず共有ディレクトリを作成しておきます。

$ mkdir ~/Code

開発環境のアドレスをhomestead.appに指定したので、hostsファイルを編集します。

$ sudo vi /etc/hosts

以下を一番下に追記し保存します。

192.168.10.10 homestead.app

下記のコマンドでVagrant boxを起動します。

$ homestead up

これでhttp://homestead.appにアクセスすると、「No input file specified.」と表示されますが、Vagrant boxは正常に起動できています。

Laravelプロジェクトの作成

下記のコマンドでVagrantにssh接続できます。

$ homestead ssh

先ほどYamlで指定したとおり、ホームディレクトリにCodeディレクトリが作成されているのでそこに移動し、Larave5のプロジェクトを作成します。

$ cd ~/Code
$ composer create-project laravel/laravel Laravel --prefer-dist

これでhttp://homestead.appにアクセスすると、以下の表示になり、Laravel5の開発環境の構築完了です。

laravel-init

参考にさせていただいた記事

Laravel 5.0.0 Laravel Homestead
VagrantにLaravel5の開発環境を構築

Category | Blog
Tag | / /
Author | Mineo Okuda / 11,942views

Company information

〒650-0024
神戸市中央区海岸通5 商船三井ビルディング4F

Contact us

WEBに関するお問い合わせは
078-977-8760 (10:00 - 18:00)