Laravel5.5プロジェクトのローカル開発環境構築（初心者向け&忘備録）

#はじめに
この記事は初心者が初めてLaravelのローカル開発環境を構築するための記事です。
忘備録的に書いていきますが修正などありましたらつどつどコメントいただけると幸いです。


#概要
とりあえずローカルで開発したい。laraveを使ってみたい。
ローカルにVirtualBoxとHomesteadで仮想環境を作成。

#環境
Mac OS X
Homestead
git 
VirtualBox
vagrant
laravel5.5

##流れ
①gitが入ってるか確認
②VirtualBoxインストール
③Vagrantインストール
④Homesteadダウンロード
⑤設定変更
⑥laravelプロジェクト作成
⑦vagrant起動
⑧完成！！

###①gitの確認
ターミナル起動して以下を入力してバージョン確認

```terminal
$　git --version
git version 2.*.*
```
これでgitのバージョン確認ができればOK。
表示されなければgitを入れてください。
＊macの場合xcodeが入っていればOK。

###②VirtualBoxインストール
[VirtualBoXの公式ページからダウンロード](https://www.virtualbox.org/wiki/Downloads
)
MacOS用のものをダウンロードしてインストール完了したらOK。

###③Vagrantインストール
[Vagrantの公式ページからダウンロード](https://www.vagrantup.com/downloads.html)

ターミナルを起動してVagrantのバージョン確認

```terminal
$ vagrant --version
vagrant version 2.*.*
```

バージョン確認ができたらOK。

###④Homesteadのダウンロード

ターミナルを起動して仮想環境のboxセットのダウンロード

```terminal
$ vagrant box add laravel/homestead
```

仮想環境ソフトウェアを選択　=>　今回はvirtualboxなので３を選択　=> Enter

```terminal
==> vagrant: A new version of Vagrant is available: 2.2.2!
==> vagrant: To upgrade visit: https://www.vagrantup.com/downloads.html

==> box: Loading metadata for box 'laravel/homestead'
    box: URL: https://vagrantcloud.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) hyperv
2) parallels
3) virtualbox
4) vmware_desktop

Enter your choice: 3
```

下のように表示されたら完了

```terminal
==> box: Adding box 'laravel/homestead' (v6.4.0) for provider: virtualbox
    box: Downloading: https://vagrantcloud.com/laravel/boxes/homestead/versions/6.4.0/providers/virtualbox.box
==> box: Successfully added box 'laravel/homestead' (v6.4.0) for 'virtualbox'!
```

gitからhomesteadの設定ファイルのダウンロード
ターミナルから以下を入力
URLの後がファイル名です。

```terminal
$ cd 
$ git clone https://github.com/laravel/homestead.git Homestead
```
完了したら階層を確認。

MacintoshHD/user/アカウント名を開いてみる。
Homesteadというフォルダが出来上がっていればOKです。

###⑤設定変更
まずはHomesteadの初期化
ターミナルを起動して以下入力

```terminal
$ cd ~/Homestead
$ bash init.sh
```

これで初期化が完了します。

次にHomestead.yamlを編集していく
これからcodeディレクトリにsampleappというlaraveプロジェクトを作成するのでsitesのtoを以下のように変更

```yaml:Homestead.yaml
sites:
    - map: homestead.test
      to: /home/vagrant/code/sampleapp/public
```

保存して完了。

続いて上記のcodeディレクトリを作成していきます。
ターミナルから以下を実行

```terminal
$ cd
$ mkdir code
```

最後にhostsの設定を書き換えます。

まずFinderで「Shift + Command + G」を入力
すると以下のようになりますので「/private/etc」の階層に移動してください

<img width="431" alt="スクリーンショット 2018-12-05 18.32.23.png" src="https://qiita-image-store.s3.amazonaws.com/0/226230/958cd3a7-4a3b-e60f-f322-73c9cc6be06c.png">

この中にhostsファイルがあります。
hostsファイルを見つけたらデスクトップにコピーします。
hostsファイルをエディターで開いて以下を追加

```hosts:hosts
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1	localhost
255.255.255.255	broadcasthost
::1             localhost

192.168.10.10 homestead.test ##追加部分
```

保存をして「/private/etc」の階層に戻します。
承認はOK。上書きしてください。

これで設定変更は完了です！

###⑥laravelプロジェクト作成
ようやくlaravelプロジェクトを作成します。
ターミナルから以下を実行してvagrant仮想環境へログインします。

```terminal
$ vagrant ssh
```

続いてプロジェクト作成(バージョン5.5を指定)

```terminal
$ cd code
$ composer create-project laravel/laravel sampleapp --prefer-dist "5.5"
```

これでプロジェクト作成は完了です。

###⑦vagrant起動

最後にvagrantを起動して確認
ターミナルから以下を実行

```terminal
$ cd Homestead
$ vagrant up
```

起動完了したら`http://homestead.test`にアクセスしてみてください。
<img width="1439" alt="スクリーンショット 2018-12-05 18.46.06.png" src="https://qiita-image-store.s3.amazonaws.com/0/226230/539fe9f7-a40d-ae5e-6696-62843c33ab39.png">

この画面が表示されていれば成功です。

もしエラーで以下のように表示された場合
`Check your Homestead.yaml file, the path to your private key does not exist.`

ターミナルで以下を入力し指示通りに作業して再度、vagrantを起動して確認してみてください。

```terminal
$ ssh-keygen
```


以上でプロジェクトの立ち上げの完了です。

お疲れ様でした。