Laravelでの開発環境をHomesteadで構築する備忘録。 VirtualBoxはインストール済みの前提。
Laravel開発環境を整える
複数のプロジェクト管理と共有を考慮し、各ディレクトリごとにHomesteadをインストール。
Homesteadのインストール
プロジェクトディレクトリを作成
$ cd my/projects/
$ mkdir project/
composer install
$ composer require laravel/homestead --dev
homesteadの設定
Vagrantfile, Homesteadをmakeする
$ php vendor/bin/homestead make
Homestead.yamlを編集。
$ vim Homestead.yaml
foldersのmapは初期設定で作成したディレクトリとなっている。 あとでmyapiというディレクトリ名でlaravelをインストールすると想定し、sitesを変更。 また,node_modulesは同期しない。
Homestead.yaml
folders:
-
map: /my/projects
to: /home/vagrant/code
sites:
-
map: myapi.test
to: /home/vagrant/code/myapi/public
type: "apache"
options:
rsync__args: ["--verbose", "--archive", "--delete", "-zz"]
rsync__exclude: ["node_modules"]
なおvagrant up後にhomestead.yamlを編集した場合は、
vagrant provision
で更新が必要。
Host設定
$ sudo vim /private/etc/hosts
hosts
$ 192.168.10.10 myapi.test
サーバ起動
準備が整ったので仮想サーバ起動。
$ vagrant up
sshで接続。
$ vagrant ssh
/home/vagrant/codeへ移動
$ cd /home/vagrant/code
ここでcomposerをダウンロードから、laravelインストール。
$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$ php composer-setup.php
$ php -r "unlink('composer-setup.php');"
Install laravel.
$ php composer.phar create-project --prefer-dist laravel/laravel mytasklist
$ php artisan --version
Laravel Framework 5.7.6
これで最新版がインストールされた。
ちなみに、バージョンを指定するとき。
$ php composer.phar create-project --prefer-dist laravel/laravel=5.7.2 mytasklist
/home/vagrant/code/myapi/public が出来ているはずなので、ブラウザからアクセスしてみる。
myapi.test
-> OK!
参考 https://readouble.com/laravel/5.7/ja/installation.html https://readouble.com/laravel/5.7/ja/homestead.html