ローカル環境開発に便利なVagrantをインストールから初期設定、基本コマンドなどを紹介していきます。
VitualBox,Vagrantのインストール
Vagrantを使うためにはVagrantとVirtualBoxのインストールが必要です。
下記のサイトからダウンロード、インストールしましょう。
- VitualBox: https://www.virtualbox.org/
- Vagrant: https://www.vagrantup.com/
Vagrantの一連の流れ
Vagrantによる開発のおおまかな流れを説明します。
- ボックスの追加:仮想マシンの設計書のようなものです。最初に一回追加すればずっと使えますので毎回追加しなくても結構です。
- ボックスから仮想マシンを作成・起動:作業用ディレクトリで、vagrant init で先ほど追加したボックスをもとにして仮想マシンを作り、vagrant up で仮想マシンを起動する。あらかじめ、mkdirコマンドで新しいディレクトリを作成し、そこを作業用ディレクトリとすることでVagrantの動きが把握しやすくなります。
- ssh接続で仮想マシンに接続:vagrant sshで仮想マシンに接続します。接続した後はapache,MySQLなどの各アプリケーションをインストールしていきます。
サンプルコード
$ vagrant box add myCentOS6.5 https://vagrantcloud.com/nrel/CentOS-6.5-x86_64/version/4/provider/virtualbox.box
$ mkdir sample
$ cd sample
$ vagrant init myCentOS6.5
$ vagrant up
$ vagrant ssh
- CentOSのボックスを追加(ボックスの名前をmyCentOS6.5とした)
- 作業用ディレクトリを作成する(ディレクトリ名をsampleとした)
- 作業用ディレクトリに移動する
- ボックスを仮想マシンとして初期化する
- 仮想マシンを立ち上げる
- 仮想マシンにsshで接続する
WEBサーバー(Apache)の導入
VagrantでWEBサーバーを動かしてみたいという事象はよく出てきますので、
とりあえずApacheの導入・起動・初期設定をしてしまいましょう。
sshに接続し、
[vagrant@vagrant-centos65 ~]$
という表示になった後、次のような手順で行うととりあえずApacheが動作します。
sudo yum -y install httpd
sudo service httpd start
sudo chkconfig httpd on
sudo service iptables stop
sudo chkconfig iptables off
- yumでApacheをインストール
- Apacheを起動する
- Apacheを次回から自動で起動するように設定する
- iptablesを停止させる
- iptablesを次回から自動で停止するように設定する
IPアドレスの変更
学ぶべき事柄は他にもたくさんあるのですが、まず初めに知っておくべき設定としてIPアドレスの設定があげられます。IPアドレスはsshで接続する前のディレクトリにあるVagrantfileというファイルに記述されています。これをviコマンドで編集することで、IPアドレスを自由に変更することができます。Vagrantfileを編集したあとには必ずvagrant reloadで仮想マシンを再起動することが必要です。
Vagrant仮想マシンを起動している状態ではデフォルトでは192.168.33.10となっています。お使いのブラウザーでURLバーに192.168.33.10と入力してEnterを押すと見事Apacheの初期画面が表示されると思います。
これを変更するときにはVagrantfileにあるprivate_networkの箇所をいじります。
$ vi Vagrantfile
$ vagrant reload
- Vagrantfileをviエディタで編集する。エディタでprivate_networkについて記述してある行があるので、その行の#(コメントアウト)を削除して好きなIPアドレスに書き換える。:wqをして上書き保存してviエディタを終了させる。
- 仮想マシンを再起動させる。再起動後はブラウザーで変更したIPアドレスにアクセスすると例のApacheの画面が表示されます。
基本コマンド一覧
1.Boxの追加・一覧取得に関するコマンド
Boxの追加
vagrant box add NAME URL
URLを指定してボックスを追加します。追加するボックスには名前をつけることができます。
- NAME:ボックスの名前。自分で好きなように名前をつけることができます。なるべく何のボックスかがわかるような名前をつけると良いでしょう。
- URL:ボックスをダウンロードするために必要なURL。 http://www.vagrantbox.es/ からダウンロードしたいボックスを探して、URLをコピーしましょう。
Boxの一覧取得
vagrant box list
今までに追加したボックスの一覧を表示します。
2.仮想マシンの起動・停止に関するコマンド
仮想マシンを起動する
vagrant up
仮想マシンを停止させる
vagrant halt
仮想マシンを再起動する
vagrant reload
なにかうまくいかなかったらとりあえずreloadしてもよいかもしれません。
仮想マシンの状態を確認する
vagrant status
仮想マシンを停止し削除する
vagrant destroy
仮想マシンが消えてしまうので注意してください。
仮想マシンを保留(スリープ)状態にする
vagrant suspend
仮想マシンを中断(保留など)状態から再開する
vagrant resume
おわりに
順次記事を追加していきますので、少々お待ち下さい。
Edited by Takashi Yamaguchi
株式会社Candleでは向上心のある若くて熱いエンジニアを募集しています。