家のmacminiが調子悪くなってしまい・・・GWということもあり再インストールすることにした。
再インストール自体は、「Command + R」で起動して、ディスクユーティリティからDiskを消去して初期化し、
その後にMountain Lionの再インストールを行い、きれいになった。
せっかくきれいになったので、次に開発環境を作るのは、実機上ではなく、仮想環境上に作ることにする。
最近流行り?の vagrant を使ってみることにする。
まずは ruby のインストール。rbenv を使用することにした。
1
2
3
  | $ brew install readline openssl
$ brew install rbenv && brew install ruby-build
$ CONFIGURE_OPTS="--with-readline-dir=/usr/local --with-openssl-dir=/usr/local" rbenv install 1.9.3-p385
  | 
 
.zshenv に追記
1
2
3
4
5
6
7
  | if which rbenv > /dev/null; then
    eval "$(rbenv init - zsh)"
    [[ -d "${HOME}/.rbenv/completions" ]] && source ~/.rbenv/completions/rbenv.zsh
    alias gem='rbenv exec gem'
    alias ruby='bundle exec ruby'
    alias rake='bundle exec rake'
fi
  | 
 
これで ruby のインストールは完了
使う ruby を先ほどインストールしたものにしておく
1
2
  | $ rbenv global 1.9.3-p385
$ rbenv rehash
  | 
 
お次は veewee のダウンロード
1
  | $ git clone https://github.com/jedi4ever/veewee.git
  | 
 
クローンし終わったら、veeweeに必要なgemをbundlerでインストール
1
2
  | $ cd veewee
$ gem install bundler
  | 
 
Gemfileでvagrantがコメントアウトされているのでコメントじゃなくする。
1
2
3
4
5
6
  | group :test do
    gem "rake"
    gem "vagrant" , "1.0.7"
    #gem "chef"
    #gem "knife-windows"
end
  | 
 
インストール
作成するテンプレートの一覧は以下のCommandで見れる
1
  | $ bundle exec vagrant basebox templates
  | 
 
今回はfedora18を作成した。
1
  | $ bundle exec vagrant basebox define 'fedora18' 'Fedora-18-x86_64'
  | 
 
これで fedora18 という名前で環境が定義される。
以下のCommandでビルド。途中でISOをダウンロードするか聞かれるので yes と答える。
1
  | $ bundle exec vagrant basebox build fedora18
  | 
 
けっこう長い間待つと、作成完了して、sshでログイン出来るようになる。
初期パスワードは、 vagrant
1
  | $ ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -p 7222 -l vagrant 127.0.0.1
  | 
 
作成したboxのエクスポートは以下のCommandで出来る。
1
  | $ bundle exec vagrant basebox export fedora18
  | 
 
これでカレントディレクトリに fedora18.box ファイルが出来る。
次にこの box をvagrantに追加して使っていく。
1
2
  | $ bundle exec vagrant box add 'fedora18' 'fedora18.box'
$ bundle exec vagrant init fedora18
  | 
 
これで完了。
起動は
1
  | $ bundle exec vagrant up
  | 
 
停止は
1
  | $ bundle exec vagrant halt
  | 
 
一時停止的なのは、
1
  | $ bundle exec vagrant suspend
  | 
 
復帰は
1
  | $ bundle exec vagrant resume
  | 
 
参考
chef-soloで使用するvirtualbox(vagrant)をveeweeを使用して作る #Ruby #chef - Qiita [キータ]