はじめに
PHPのWebフレームワークといえばLaravelである。今PHPでWebアプリケーションを開発するならLaravelを使っておけば間違い無い。
LaravelにはHomesteadという開発環境が用意されていて、これを使えばすぐにWebアプリを作成できる。
環境
今回はMacで行うが、Laravel公式ドキュメントを読んで進めればWindowsでも問題なく開発ができる。
- PHP 7.3
- Laravel 5.8
- macOS High Sierra
Laravelプロジェクトの作成
基本的にこちらのドキュメントどおりに進めればよい。
僕のPCにはPHPとcomposer、laravelコマンドは導入済みだったので今回は割愛する。
まずは Laravel new でアプリケーションを新規作成する。
$ ~/.composer/vendor/bin/laravel new lol-personal-data Crafting application... (中略。ライブラリのインストールなどが挟まる) Application ready! Build something amazing.
アプリケーションの動作確認をしてみる。
$ cd lol-personal-data
$ php artisan serve
動いた。
initial commit する。
git init git add . git commit -m "initial commit"
Homestead上で動かす
以下のドキュメントを参考に進める。
Virutal Box と Vagrant はインストール済みの前提で進める。
Homesteadの設定をする。
git clone https://github.com/laravel/homestead.git Homestead
cd Homestead
sh init.sh
Homestead.yml
をいい感じに設定する。
--- ip: "192.168.10.10" memory: 2048 cpus: 1 provider: virtualbox authorize: ~/.ssh/id_rsa.pub keys: - ~/.ssh/id_rsa folders: - map: ../lol-personal-data to: /home/vagrant/code sites: - map: lol-personal-data.local to: /home/vagrant/code/public databases: - homestead
Homesteadを起動する。
vagrant up
コードの同期が正しく動作しているか確認する。
vagrant@homestead:~$ ls code vagrant@homestead:~$ cd code/ vagrant@homestead:~/code$ ls app bootstrap composer.lock database phpunit.xml resources server.php tests webpack.mix.js artisan composer.json config package.json public routes storage vendor yarn.lock
問題なさそう。 Homestead.yml
の内容に対応させて以下を /etc/hosts
に追記し、
192.168.10.10 lol-personal-data.local
アクセス: http://lol-personal-data.local/
問題なく動いた。
今日はここまで。
既存のプロジェクトをgit cloneしてHomesteadで動かす場合
既存プロジェクトをgit cloneしてからHomesteadを動かす場合、 composer install
などを叩く必要がある。HomesteadのVagrantならcomposerもyarnもインストールされているので、以下の手順を行えば良い。
vagrant ssh cd code composer install yarn install --no-bin-links cp .env.example .env php artisan key:generate