takkMacのWeb開発環境として、今更だがVagrant(ベイグラント)を導入した。Capitanとアップグレードする度に再構築が必要だった。Vagrantを使えばOSアップグレード毎にサーバー環境の再構築は必要なくなり、長期的に見れば便利。今どきはMAMPやXAMPPよりスタンダードなんだろう。いうわけでMacに導入して感じたことを。思ったよりずっと簡単VagrantとはつまりVirtualBoxを制御するソフトで、VirtualBoxもインストールする必要がある。VirtualBox側にも何らかの設定が必要かと思ったが、インストールさえしてあればVirtualBox側は触る必要もない。VagrantとVirtualBoxをGUIでインストール後、あとはコマンドラインからVagrantを使うことになる。Vagrantがインストールできたら、コマンドラインでBoxファイルというVagrant用のOSイメージをダウンロードして、そのBoxを基礎に仮想サーバを構築する。その仮想サーバの設定はVagrantfileというテキストファイルのみで制御できる。解説ページは沢山あるが、私はこちらのページが最も参考になった。Forbiddenに。これはSELinuxを解除することで解決した。sshで仮想サーバが触れるようになる。立ち上がった仮想サーバにapache、phpなどをインストールしていくのだが、この仮想サーバを初期状態にリセットするには?とか、その際Boxファイルにも影響がでるか?といった点が次の疑問だと思う。destroyだけで出来る。upでBoxファイルの初期状態に戻る。Boxファイルは雛形にすぎず、仮想サーバにどれだけ変更を加えようがBoxファイル自体に影響はない。今までサーバ環境の構築というと、セットアップの頻度も少ないのでハードルが高いという印象があったが、Vagrantのこの手軽さを経験してしまうと、失敗が何ら怖くなくなり、サーバ構築のハードルがぐっと低くなったように感じる。仮想サーバへのWEBアクセス方法は2つあり、標準ではローカルPCの8080番ポートを仮想サーバの80番ポートにフォワードするか、あるいは任意のIPアドレスでアクセスするかを選べる。ローカルPCの8080番ポートを使った場合は、ブラウザからはhttp://localhost:8080/でアクセスできるし、同じネットワークのPCからもアクセスできる。IPアドレス(デフォルトでは192.168.33.10)を使った場合は、ローカルPCからしかアクセスできない。私は今のところIPアドレスでアクセスすることにした。その場合、ブラウザからはhttp://192.168.33.10/とアクセスすることになるが、Macのhostsを編集してhttp://vagrant/でアクセスできるようにした。vagrant先ほどの解説ページのとおりにすれば、プロビジョニングによりapache/mysql/php/gitの環境まで一気に構築できる。通常のWEB開発はこれで十分だが、せっかくVagrantで手軽に環境を触れるようになったので、私はPHP7やMySQL5.6といった最新環境を構築することにした。それについては次の記事で。