WindowsでVagrant&ChefでPHP 5.3/CakePHP 2.4.5開発環境を構築


WindowsでのPHP開発を教えるようになってきましたが、環境構築でXAMPPの特殊な手順をどうしても覚えたくなかったのでVagrantをWindows対応させました。CentOS 64bit版が動かないパターンに遭遇したので、32bit版のboxを使っています。

(05-01 21:15) Ruby InstallerのRubyコマンドプロンプトの説明を追記


🐯 VirtualBox

VirtualBox 公式サイト

パッケージをDLしてインストール。

🐰 Ruby Installer

Ruby Installer

Rubyの安定版&最新版をダウンロード。(3/30時点ではRuby 2.0.0-p451)

インストールが完了したら、Windowsのスタートメニュー内に「Ruby x.x.xフォルダ内にRubyコマンドプロンプトを開く」というショートカットが増えていると思います。ここをクリックすると、RubyにPATHが通った状態でコマンドプロンプトを実行できます。

🚌 Development Kit

Ruby Installer

同じくRuby Installerのしたの方にあるDevelopment Kitをダウンロード & インストール。

🍮 Git for Windows

Git for Windows

Gitの最新版をダウンロード。(3/30時点ではGit-1.9.0-preview20140217)

登録時のセレクトメニューは次のようにしてください。

スクリーンショット_2014-03-30_7_12_10

スクリーンショット_2014-03-30_7_12_23

Windows7_vagrant1__Running_

🍄 gow

bmatzelle/gow - GitHub

Linuxコマンドがながと生きていけないのでダウンロードしてインストール。

🏈 Vagrant

Vagrant 公式サイト

パッケージをDLしてインストール。

vagrantをインストールしたら、boxでChefを使えるようにするためのプラグインをインストールします。コマンドプロンプトを開いて次のコマンドを入力。

vagrant plugin install vagrant-omnibus

🎳 仮想マシンの作成

自分の好きな場所(例は~/Dropbox/vagrant)に仮想マシン用のフォルダを作成。

mkdir vagrant
cd vagrant
git clone https://github.com/morizyun/vagrant-centos-cakephp cakephp
cd cakephp
gem install bundler
bundle install
vagrant up

Network系でエラーが出る場合は、一度Windows側を再起動をしてみてください。

🐮 hostsの書き換え

1) C:\Windows\System32\drivers\etc\hostsを管理者権限のメモ帳で開く

2) 次の内容を追記

192.168.33.10 cakephp.dev

😼 ブラウザでのアクセス

http://cakephp.dev/にブラウザをアクセスするとapp/フォルダの中のファイルにアクセスできます。

スクリーンショット 2014-03-30 11.18.48

あとは、vagrant/CakePHP/appの中がCakePHPのアプリケーションをいじれば、適宜反映されます。

😸 phpMyAdminへのアクセス

http://cakephp.dev/phpMyAdminにブラウザをアクセスするとユーザー名とパスワードを聞かれます。ユーザー名はroot、パスワードはcakepassと入力すると「phpMyAdmin」にアクセスできます。

スクリーンショット 2014-03-30 11.20.58

🐹 Vagrantの基本コマンド

vagrant up : vagrantの起動(Vagrantfileがあるフォルダで実行)
vagrant halt : vagrantを終了(Vagrantfileがあるフォルダで実行)
vagrant provision : vagrantに設定を反映(Vagrantfileがあるフォルダで実行)
vagrant ssh : vagrantにログイン

🎉 GitHubのリポジトリ

このvagrantの詳細はGitHubのリポジトリ『morizyun/vagrant-centos-cakephp』にあります!

🐠 お願い

もし、動かない場合があったらぜひコメントください。

🗽 参考リンク

各OS(Windows,Mac)別hosts設定方法 - Web覚

今すぐVagrantを始めよう | 株式会社シンメトリック公式ブログ |

【仮想OS】virtualboxで64bitOSが選択できない場合 - エーシーの日記

「This Kernel requires an x86-64 CPU ,but only detected an i686 CPU.Unable to boot - please use a Kernel appropriate for your CPU.」にはかなりハマった…

🤔 変更来歴

(05-01 21:15) Ruby InstallerのRubyコマンドプロンプトの説明を追記

📚 おすすめの書籍

🖥 サーバについて

このブログでは「Cloud Garage」さんのDev Assist Program(開発者向けインスタンス無償提供制度)でお借りしたサーバで技術検証しています。 Dev Assist Programは、開発者や開発コミュニティ、スタートアップ企業の方が1GBメモリのインスタンス3台を1年間無料で借りれる心強い制度です!(有償でも1,480円/月と格安)