PHP
Vagrant
Laravel
PHP7
laravel5.8

今さらながらLaravelの環境構築をしてみた(VirtualBox + Vagrant + Homestead + Composer)


経緯

PHPを使ってアプリケーションを作成しようと考え、せっかくなら触ったことのないフレームワークを使って見ようと思い、Laravelを導入してみました。

今まで、Cake PHPを使用する機会が多かったので、環境構築からつまずくことがあったのでメモとして残しておきます。


基本的なこと

【Laravel超入門】開発環境の構築(VirtualBox + Vagrant + Homestead + Composer)

基本的にはこちらを参考にさせていただきましたが、一部うまく行かなかった部分もあるのでその部分を含め、以下に手順を残しておきます。


環境構築手順


環境

macOSMojave 10.14.3

Macbook Air


1.Vagrant と VirtualBox のダウンロードとインストール

Vagrantはこちら

VirtualBoxはこちら


2.Homestead vagrant box のダウンロード

ターミナルでコマンドを実行します。

vagrant box add laravel/homestead

このコマンドで、Laravelの開発環境を作成するための準備を行います。以前CakePHPの環境を構築した際は、vagrantfileを作成しましたが、HomesteadではLaravel用に作成済みのvagrantfileを入手できるようです。公式から出ているので、初心者にはありがたいなと思いました。


3.Homstead のダウンロード

ターミナルで、appというディレクトリを作成し、Homesteadをダウンロードします。

mkdir app

の後に

cd app

appディレクトリで以下のコマンドを実行します。

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


4.Laravel Homestead の設定ファイルの作成

先ほどダウンロードしたHomesteadのディレクトリに移動します。その後コマンドを実行します。

cd Homestead

bash init.sh

Homestead.yamlを作成します。


5.SSH鍵ファイルの作成

ホームディレクトリに移動後、鍵の有無を確認します。

cd

ls -la I grep .ssh

鍵が存在しない場合は、

ssh-keygen -t rsa

鍵を作成します。Enter file in which to save the keyが出たら、Enterキーを押します。パスフレーズを決めなさいと言われるので、任意のパスフレーズを入力します。認証の際に必要になるときもあるので、覚えやすいものにすると良いと思います。

ls -la I grep .ssh

念のために、上記のコマンドで、id_rsaid_rsa.pubが存在するか確認します。


6.Homestead の設定ファイルの編集

cd app/Homestead

ディレクトリ をHomesteadに移動します。

vi Homestead.yaml

で、ファイルを修正します。

元記事では、表記が修正されていないため、以下の表記をコピーしてください。


Homestead.yaml


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

authorize: ~/.ssh/id_rsa.pub

keys:
- ~/.ssh/id_rsa

folders:
- map: ~/line
to: /home/vagrant/code

sites:
- map: homestead.test
to: /home/vagrant/code/Laravel/public

databases:
- homestead

# ports:
# - send: 50000
# to: 5000
# - send: 7777
# to: 777
# protocol: udp

# blackfire:
# - id: foo
# token: bar
# client-id: foo
# client-token: bar

# zray:
# If you've already freely registered Z-Ray, you can place the token here.
# - email: foo@bar.com
# token: foo
# Don't forget to ensure that you have 'zray: "true"' for your site.



7.仮想マシンの起動

vagrant up

を行い、仮想マシンを起動します。


8.仮想マシン上で Composer を利用して、Laravel ファイルをダウンロードする

仮想マシンを起動したら、sshで仮想マシンにアクセスします。

vagrant ssh

その後、仮装マシンにLaravelのファイルをダウンロードしていきます。

ファイルを格納するディレクトリに移動し、ファイルをダウンロードします。

cd code

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


9.Laravel ページの表示

http://192.168.10.10/にアクセスして以下のページが表示されれば、完了です!

FireShot Capture 157 - Laravel - 192.168.10.10.png


まとめ

参考元の【Laravel超入門】開発環境の構築(VirtualBox + Vagrant + Homestead + Composer)を参考に環境構築を行ってみました。

参考元のコメントにあるように、Laravelのバージョンアップに伴い、微妙にディレクトリ名が変わってうまくいかない場所があるようです。

2019年5月14日時点では、上記手順で環境構築が行えたので、もし詰まっている方が入れば参考にしていただきたいです。