PHP7とLaravel 5でFacebookアカウントでログインできるTODOアプリをつくる 4日目(環境再構築編)
これからの作業のために
前回の記事から多少時間が空いてしまいました。
ここまでの作業で環境構築とLaravel 5のインストール、Facebookログインのためのライブラリ読み込みまで進めてきましたが、
今後の開発にあたって、やはりアプリケーションのコードもGitで管理しておいたほうが都合がいいので少し構成を変更しようと思います。
どう変更するか
変更のステップひとつひとつを説明してもあまり面白くないので、環境をどのように再構築したいかをまとめます。
vagrant up
するだけで開発が始められるようにしたい- ここまでの作業で何回かに分けてインストールしていたミドルウェアは一括でインストール・設定してしまいたい
- Laravel 5のアプリケーションもリポジトリに含めたい
composer install
はVagrantの起動時にプロビジョニングで済ませたい
- VagrantのSynced Folderを使って、ホスト上のアプリケーションをVM内で実行したい
- 幾つかのディレクトリーはApacheの実行ユーザーから書き込みできる必要があるので、権限を適切に設定する
上記の変更をすべて適用したVagrantfile
以下のようなVagrantfileになりました。このファイルとアプリケーションのコードを合わせてGitHubにもpushしておきました。
# -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure(2) do |config| config.vm.box = "ubuntu/trusty64" config.vm.network "private_network", ip: "192.168.33.10" config.vm.synced_folder "./todo/bootstrap/cache", "/vagrant/todo/bootstrap/cache", owner: "vagrant", group: "www-data", mount_options: ["dmode=777,fmode=666"] config.vm.synced_folder "./todo/storage", "/vagrant/todo/storage", owner: "vagrant", group: "www-data", mount_options: ["dmode=777,fmode=666"] config.vm.provision "shell", privileged: false, inline: <<-SHELL sudo sed -i s/archive.ubuntu.com/ftp.jaist.ac.jp/ /etc/apt/sources.list LC_ALL=en_US.UTF-8 sudo add-apt-repository -y ppa:ondrej/php sudo apt-get update sudo apt-get -y install apache2 php7.0 php7.0-sqlite3 php7.0-curl git curl language-pack-ja sudo chown vagrant.vagrant /var/www/html sudo a2enmod rewrite sudo cp /vagrant/default.conf /etc/apache2/sites-enabled/000-default.conf sudo service apache2 restart curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer composer global require "laravel/installer" echo 'export PATH=~/.composer/vendor/bin:$PATH' >> .bashrc cd /vagrant/todo; composer install SHELL end
このVagrantfileで構築した環境を前提に、次回は引き続きTODOアプリの開発に入っていきたいと思います。