LoginSignup
17

More than 5 years have passed since last update.

Laravel5 を VM環境で用意する

Last updated at Posted at 2015-02-24

前提環境

  • mac 10.9.5
  • php 5.6
  • composer 1.0.0
  • vagrant 1.6.3

目標

  • vagrantでLaravelを動かす
  • DBはPostgreSql

macでphp+postgresqlやろうとして、

[PDOException]
could not find driver

が出たからhomesteadに挑戦したという・・

手順

基本的に公式のドキュメント通り。

Laravel Homestead 5.0.0 Laravel

Vagrant boxの追加

vagrant box add laravel/homestead

Homesteadのインストール

手順は2種類。git cloneするのと、composerで入れるの。
git cloneの場合はこちらの手順で良い。

composerを選択した場合

composerでhomesteadをインストール

composer global require "laravel/homestead=~2.0"

~/.composer/vendor/binにPATHを通す

ターミナルからhomesteadコマンドが使えるようになる。

homestead 設定ファイルを作成

homestead init

Homestead.yaml ファイルが ~/.homestead ディレクトリに作られる。

Homestead.yamlの設定を変更する

ターミナルで

homestead edit

を打つと、editorでHomestead.yamlを編集できる。
普通にテキスト編集エディタでファイルを開いて編集しても同じ。

設定項目

  • ip: vagrantに割り当てられるIP address
  • authorize: 公開鍵のパス
  • keys: 秘密鍵のパス
  • folters: ホストでlaravelのコードを置きたいディレクトリとvagrantでのディレクトリのマッピング
  • sites: Nginxサイト設定
  • databases: vagrant上のMySql, PostgreSqlに作るデータベース名
  • variables: vagrant上での環境変数

vagrant up

公式のドキュメントに

Homesteadディレクトリーで vagrant up コマンドを実行してください。

と書いてあるが、Homesteadディレクトリーがどこなのかわからん・・
これでめちゃめちゃハマりました・・
普通にgit cloneしてる場合は、そのcloneしたディレクトリで良いのですが、composerでインストールした場合

cd ~/.composer/vendor/laravel/homestead

でした。。
homestead init で作られた ~/.homestead ではありません。。
こっちは設定ファイルが置かれるだけらしい・・
ひどい目にあった;;

動作確認

アプリの起動

vagrant sshでログインして、ホームにHomestead.yamlで指定した folders のvagrant側のディレクトリが出来てるか確認する。

出来てたら、cdして、アプリケーション起動。

php artisan serve

ホストから 192.168.10.10:8000 (Homestead.yamlのIP設定を変えていれば、IP部分を読み替えて)接続・・・・

できない!!なぜ〜〜

php artisan serve --host 0.0.0.0

にすると解決した。

参考URL:laravelのartisan serveで起動したビルトインサーバに外部からアクセスする方法 – 日本の天ぷら情報
ありがとうございます!

DB接続が出来てるか確認

まだ Larabelの初期設定(DBの設定をpostgresに変えたくらい)しかしていないので、モデルが無い。
が、DB接続可能か調べるのは以下で大丈夫っぽい。

初めてmigrationするなら

php artisan migrate:install

もうマイグレーション済なら

php artisan migrate:refresh

とかでエラーが出なければ大丈夫っぽい。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17