vagrantで開発環境を自動的に作成する
@nqounetです。
結構前に@papixさんから教えてもらったvagrantですが、ふとした切っ掛けで、もう少し本格的に使いたいと思いはじめました。
ちなみに、「ベイグラント」と聞いてこれを思い出しました。
まあ、それは置いておいて。
vagrantで開発環境の自動構築というと、chef-soloの情報が多いと思う(というか、chefだけだと思っていました)のですが、今回はshellでやってみた事を書いてみます。
OSXならdmgファイルを、Windowsならmsiファイルを選びます。
今回調べていて知ったのですが、private_networkではこの例のようにDHCPを使って自動的にIPアドレスを割り当てるようにする事ができます。
これまではいちいちIPアドレスを重ならないように設定(重なると起動できない)していたのですが、これで変更する箇所が減って大分楽になりました。
run once
if ! [ -f “$HOME/perl5/perlbrew/etc/bashrc” ]; then
install Perlbrew
curl -L http://install.perlbrew.pl | bash echo ‘source ~/perl5/perlbrew/etc/bashrc’ » ~/.bashrc source ~/.bashrc
install Perl
perlbrew install 5.16.3
perlbrew switch 5.16.3
install App::cpanminus (cpanm)
curl -L http://cpanmin.us | perl - App::cpanminus fi
yum install -y git mysql-devel
cpanm DBD::mysql Data::Model
あちこちのブログでは、yumなどにsudoを付けて実行していましたが、そのような必要はありませんでした。
少なくとも「Vagrant version 1.2.2」では、rootとして実行されています。
で、これら2つのファイルを同じディレクトリに置いて、そのディレクトリで以下のようにコマンドを入力します。
```text
vagrant up
上手く行けばPerlのビルドまで実行されるので、結構時間がかかります。
構築が終わったら、仮想マシンにログインします。
|
|
これで、先ほど作成したマシンにログインできます。
初期ユーザーはvagrantです。
で、先ほどのスクリプトはroot権限なので、rootに変わってからPerlがインストール出来ているか確認してみます。
|
|
これでrootになれましたので、続けてPerlのバージョンを見てみます。
|
|
結果は以下のとおり、上手くいっています。
|
|
ちなみに、DBD::mysqlを指定しているのは、MAMPが稼働中のOSXにこれがインストールできなくて泣いたからです。
とりあえず、DBD::mysqlがインストールできるかどうかを一つの指標にしていましたので、この結果は満足の行くものでした。
この調子で、今度はchef-soloで色々とやってみたいですね。
Comments
comments powered by Disqus