メモ

プログラミングなどの備忘録を書きます

vagrantメモ

久しぶりにvagrantでローカル環境を作ってみたが、結構使い方を忘れてしまっていた。 毎度ググらなくて済むようにメモを残しておく。

box追加

box名、boxのurlを指定してインストールする。
公式が提供しているboxを利用する場合は飛ばせる。(初回起動時にインストールされる)

vagrant box add Ubuntu14.04 https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-i386-vagrant-disk1.box
初期化

boxを指定してカレントディレクトリを初期化する。Vagrantfileが作られる。

mkdir myvagrant
cd myvagrant
vagrant init Ubuntu14.04
起動
vagrant up
ssh接続
vagrant ssh
プロビジョニング

Chef, ansible, シェルスクリプトなど様々な方法を選択することができる。 自分は良くansibleを利用するのでansibleのサンプルを書いておく。
下記はlocal provisionerを使用する例。local provisionerを使用する場合、ホストにansibleがインストールされ、ホスト上でプロビジョニングが行われる。

config.vm.provision "ansible_local" do |ansible|
  ansible.playbook = "playbook.yml"
  ansible.inventory_path = "hosts"
  ansible.install_mode = "pip"
  ansible.version = "1.9.6"
end
シャットダウン
vagrant halt