Contents
Vagrant の準備
Vagrant を実行するために予め下記をインストールしておきます。
- VirtualBox
- Vagrant
- vagrant-hostsupdater
VirtualBox インストール
※公式サイト
https://www.virtualbox.org/
ダウンロードしてインストールします。
Vagrant インストール
※公式サイト
https://www.vagrantup.com/downloads.html
OSに合ったバイナリをダウンロードしてインストールします。
Vagrant のバージョン確認
インストール後に下記コマンドでバージョンを確認できます。
1 |
$ vagrant -v |
Box ファイルの登録
※CentOS6.7の場合
1 |
$ vagrant box add centos6.7 https://github.com/CommanderK5/packer-centos-template/releases/download/0.6.7/vagrant-centos-6.7.box |
1 |
$ vagrant box add centos7.1 https://github.com/CommanderK5/packer-centos-template/releases/download/0.7.1/vagrant-centos-7.1.box |
1 2 |
$ vagrant box add bento/centos-7.1 $ vagrant box add bento/centos-7.2 |
Box 一覧を表示
登録済みの利用可能な Box を表示します。
1 |
$ vagrant box list |
Box から不要な Box を削除
1 |
$ vagrant box remove centos6.7 |
Vagrantfile の作成 ( Box を指定)
下記コマンドで Vagrantfile が作成されます。
1 |
$ vagrant init centos7.1 |
Vagrantfile を編集
Vagrantfile を開きます。
1 |
$ vim /Users/パス/Vagrantfile |
ファイルに VM の IP アドレスを設定します。
1 |
config.vm.network "private_network", ip: "192.168.33.10" |
vagrant-hostsupdater のインストール
vagrant-hostsupdater を利用すると、vagrant 実行時に /etc/hosts の書き換えを自動で行います。
1 |
$ vagrant plugin install vagrant-hostsupdater |
VMを起動
Vagrant を起動して Vagrantfile に基づき VM を作ります。
1 |
$ vagrant up |
sshで接続
下記コマンドでゲストOSにログインします。
1 |
$ vagrant ssh |
Vagrant ファイルで複数のゲストを起動する場合はゲストOSを指定します。
1 2 |
$ vagrant ssh vm1 $ vagrant ssh vm2 |
ssh config
vagrant の ssh 接続設定を下記コマンドで簡単に config ファイルに追記できます。
1 |
vagrant ssh-config --host web >> ~/.ssh/config |
まとめ
複数 VM を起動する場合はゲストOSを指定しないとログインできませんのでお気をつけ下さい。
Chef社がメンテナンスしているbento系のBoxは安定しているので、Vagrant の Box ではおすすめです。
これでローカル環境構築だけでなく、ビルド&スクラップが簡単にサクサク行えます。
Ansible を使うとさらに冪等性が高く便利になります。
Ansible についてはこちらをご参照ください。