Homesteadの設定方法

More than 1 year has passed since last update.

Laravel 5.4 Laravel Homestead

こちらに大体のことは書いてあります。

ただ書いてないことも合ったので、記事にしました。


事前準備

VirtualBoxとVagrantがインストールされている。

※インストールされてない場合以下のURLからインストール


vagrantにhomesteadのboxを追加

vagrant box add laravel/homestead

2回目の場合はboxをアップデートしてくと良いかも

vagrant box update


gitでHomesteadの設定に必要なファイルcloneする

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

Homesteadの箇所は任意で変更可能。プロジェクト名とかにしとくと良いかも。

例:hoge_project


Homestead.yamlの設定


Homestead.yamlファイルを生成

cloneしたディレクトリにcdして以下のコマンドを実行

bash init.sh


Homestead.yamlを書き換える。

---

ip: "192.168.10.20" #前回作ったHomesteadなどとかぶらないIPの方が良い
memory: 2048
cpus: 1
provider: virtualbox

authorize: ~/.ssh/id_rsa.pub #自分の公開鍵と同じパス(無い場合は作成)

keys:
- ~/.ssh/id_rsa #自分の秘密鍵と同じパス(無い場合は作成)

folders:
- map: ~/workspace/hoge_project/hoge_project #localからプロジェクトファイルまでのパス
to: /home/vagrant/hoge_project #vagrantからプロジェクトファイルまでのパス
type: "nfs" #localので書き換えた内容がvagrantに反映されないことがあり、nfsの設定をしたら治ったので追記しとく

sites:
- map: hoge_project.local #localでアクセスするURL
to: /home/vagrant/hoge_project/public #rootディレクトリのパス
schedule: true #laravelのスケジュール機能を使う場合はこのオプションを追加
         #もし複数ドメインがある場合はこのようにして追加出来る
- map: sub.hoge_project.local 
to: /home/vagrant/hoge_project/public
schedule: true

databases:
- hoge_project #DB名


homesteadを複数起動する場合に必要な設定

以下の処理をしないとエラーになる。

Homestead/scripts/Homestead.rb

homestead-7と書かれた箇所を任意の重複しない名前に変更する。

(を使うと良くないエラーが出る。

これでhomesteadの設定は完了です。

後はプロジェクトをHomestead.yamlと同じ階層に配置してvagrant upすればOK。