vagrant便利です。
今日はWindows7環境でvagrantを自由に使えるようになるまでの手順を記録します。
私が普段作業する端末はwindows7であるため、vagrantのりようにあたってcygwinやgit shell等、sshクライアントの使えるソフトウェアを別途インストールする必要がありました。
私は普段cygwinを使っているので、cygwinで説明します。
1. cygwinのインストール
サイトURL:http://www.cygwin.com/install.html
ダウンロードURL:http://www.cygwin.com/setup.exe
まずはcygwinをインストールしましょう。
多くのパッケージを同時にインストールするので、少し時間がかかります。
並行してVirtualboxのインストールも進めるといいでしょう。
2. VirtalBoxのインストール
サイトURL:https://www.virtualbox.org/wiki/Downloads
次に、virtalBoxをインストールします。
windowsOSへのインストールなので、
virtual box x.x.xx for Windows hosts をダウンロード、インストールします。
(今回は 4.2.14 を使用)
3. vagrantのインストール
ダウンロードURL:http://downloads.vagrantup.com/
最新バージョンの、今回はWindows版をダウンロード・インストールしましょう。
4. vagrant boxの作成
パスを通して、コマンドからbox作成をします。 ソースはhttp://www.vagrantbox.es/で公開されています。
ページ下部、CentOSの項目を探します。
今回は「CentOS6.3 64bit」で構築するため、「CentOS 6.3 x86_64 minimal」のURLを指定しましょう。
vagrant box add YOUR_BOX_NAME https://dl.dropbox.com/u/7225008/Vagrant/CentOS-6.3-x86_64-minimal.box vagrant init vagrant up
5. 設定ファイル Vagrantfile の編集
仮想サーバを起動する前に、設定を変更しておきましょう。
1.config.vm.box の箇所にbox名を指定。 2.config.vm.network :private_network のコメントアウトを外します。IPはそのままでもOK。 3.config.vm.network のコメントアウトを外し、:public_network とします。 4. config.vm.provider と vb.customize のコメントアウトを外し、vb.customize については好みのメモリサイズに変更しましょう。物理メモリサイズをMB単位で設定できます。 ※下記では、1GBで設定しています。 [code lang=”ruby”]
Every Vagrant virtual environment requires a box to build off of.
config.vm.box = “YOUR_BOX_NAME”
The url from where the ‘config.vm.box’ box will be fetched if it
doesn’t already exist on the user’s system.
config.vm.box_url = “http://domain.com/path/to/above.box”
Create a forwarded port mapping which allows access to a specific port
within the machine from a port on the host machine. In the example below,
accessing “localhost:8080″ will access port 80 on the guest machine.
config.vm.network :forwarded_port, guest: 80, host: 8080
Create a private network, which allows host-only access to the machine
using a specific IP.
config.vm.network :private_network, ip: “192.168.33.10″
Create a public network, which generally matched to bridged network.
Bridged networks make the machine appear as another physical device on
your network.
config.vm.network :public_network
Share an additional folder to the guest VM. The first argument is
the path on the host to the actual folder. The second argument is
the path on the guest to mount the folder. And the optional third
argument is a set of non-required options.
config.vm.synced_folder “../data”, “/vagrant_data”
Provider-specific configuration so you can fine-tune various
backing providers for Vagrant. These expose provider-specific options.
Example for VirtualBox:
# config.vm.provider :virtualbox do |vb|
Don’t boot with headless mode
vb.gui = true
Use VBoxManage to customize the VM. For example to change memory:
vb.customize [“modifyvm”, :id, “–memory”, “1024”] end [/code]
6. ゲストマシンを起動しログイン
下記コマンドだけで仮想マシンに接続することが出来ます。 設定に不備がなければ、仮想マシンからWAN(インターネット)に接続もできるようになっています。
vagrant up vagrant ssh
7. ソフトウェアインストール(apache,PHP,MySQL)
基本的なライブラリをひと通りインストールします。
yum -y install php* yum -y install mysql* yum -y install ntp* yum -y install httpd
ほか適宜。 典型的なLAMP環境でいきます。
8. 端末(ホストマシン)のhostsファイルの編集
apacheのSERVER_NAMEの文字列に対しては、Vagrantfileにも定義した内部IPを見るように端末のhostsを書き換えます。 [code] “C:WindowsSystem32driversetchosts” [/code] Windows7なので、上記ファイルは管理者権限で開いたメモ帳やエディタで、編集します。 ここでは仮にSERVER_NAMEをhoge.devとします。 [code] hoge.dev 192.168.33.10 [/code]
9. apacheテストページ確認
この状態でブラウザでhttp://hoge.dev/にアクセスして、apacheのテストページが帰ってきたらひとまずOKです。
次回はこの環境下に、今ちょっと話題のLaravel4をインストールしてhello world!までやってみます。