気軽に楽しくプログラムと遊ぶ

自分が興味があってためになるかもって思う情報を提供しています。

Vagrantを試してみる

Vagrant

仮想マシンをもの凄い簡単に操作できるラッパーツール
Vmの構成をvagrantfileに記述してvagrantに任せると
面倒な各種設定作業を一気にやってくれる。

環境整備に10分もかからないらしい。

仮想環境の構築

2. Vagrantfileの生成

vagrant init centos64

「centos64」Box名

Boxを公開しているサイト

Vagrant Cloud
https://atlas.hashicorp.com/boxes/search?utm_source=vagrantcloud.com&vagrantcloud=1

仮想環境の雛形一覧を参照できる(有志の方が作ったBox 非公式)
A list of base boxes for Vagrant - Vagrantbox.es

3. VMの起動とSSHログイン

#起動
vagrant up

#ssh接続
vagrant ssh

デフォルト設定でproviderであるvirtual boxへcentosをのせる。
ホストOSとゲストOSのOSのbit数が異なる場合はVMのカスタマイズを行う v.customizeによる設定が必要。

4. その他の基本コマンド

#状況を確認
vagrant status

Current machine states:
default                   running (virtualbox)


#再起動
vagrant reload

#VMのシャットダウン
vagrant halt

#VMの 休止
vagrant suspend

#vagrantを削除
vagrant destroy

5. webサーバーの設定

5.1 ゲストOS側
#起動
vagrant up

#ssh接続
vagrant ssh

#インストール
sudo yum -y install httpd

#サービス起動
sudo service httpd start

#自動起動設定(再起動時でもwebサーバーを起動させる)
sudo chkconfig httpd on

#ファイアーウォールの設定を切る(設定省略のため。ローカル開発環境なのでOK)
sudo service iptables stop

#上記設定が自動起動しないように設定
sudo chkconfig iptables off

# インデックスページを作成(centOS64の場合)
cd /var/www/html
sudo vi index.html

cat index.html
<h1>Hello world!</h1>

exit
5.2 ホストOS側
# 仮想環境への接続許可設定(プライベートネットワークを使う)
vi Vagrantfile

# コメントアウトされている以下の記述に仮想環境のIPを設定
config.vm.network :private_network, ip: "192.168.33.10"

# 設定を読み込み直す
vagrant reload

webブラウザ上から以下のURLへアクセス
http://192.168.33.10

hello worldページが参照できる


ホストOSとのファイル共有

Vagrantfileがあるホスト側のディレクトリがゲストOSの /vgrantにマウントされる


参考URL
http://dotinstall.com/lessons/basic_vagrantdotinstall.com